How can I modify the build information for mex code generation with the codegen function?

4 views (last 30 days)
I would like to define a custom toolchain that I can use to set compiler and linker options, among other settings. However, after performing the command:
>> cfg = coder.config('mex')
I do not see any such option. 
I would like to specify compiler and linker flags, or otherwise edit the build configuration using the codegen command. How can I do this without manually editing the makefile for mex code generation?

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 9 Mar 2021
Edited: MathWorks Support Team on 9 Mar 2021
Codegen('mex') does not support custom toolchains, as noted in the documentation at the following link:
Compiler settings are inherited from the "mex -setup" command.
Instead, you can use the Post-Code-generation command to pass a custom Build Information Object to the "codegen" command.
For example, you could add a link flag with the following function:
function setbuildargs(buildInfo)
     linkFlags = {'-lpthread'};
     buildInfo.addLinkFlags(linkFlags);
     cfg = coder.config('mex');
end
That function can then be used to pass the build information object via the PostCodeGenCommand:
>> cfg.PostCodeGenCommand = 'setbuildargs(buildInfo)';
More information and further examples can be found in the documentation at the following link:

More Answers (0)

Categories

Find more on Build Configuration in Help Center and File Exchange

Products


Release

R2016a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!