Multiple include paths in mex
35 views (last 30 days)
Show older comments
matuser123
on 19 Apr 2016
Answered: Philip Borghesani
on 19 Apr 2016
I have a source file with headers in multiple directories that I'm compiling.
mex -v -IC:\working\tempInclude1 -IC:\working\tempInclude2 mexTest.cpp
returns
arguments = -IC:\working\tempInclude1 -IC:\working\tempInclude2
and works fine. But if I try to use the syntax below,
srcFile = 'mexTest.cpp';
ipath = ['-I' fullfile(pwd,'tempInclude1') ' -I' fullfile(pwd,'tempInclude2')];
mex('-v',ipath,srcFile)
it returns
arguments = -I"C:\working\tempInclude1 -IC:\working\tempInclude2"
and that double quote causes the command to fail. Any ideas? When I look at ipath, there is no quote in it.
0 Comments
Accepted Answer
Philip Borghesani
on 19 Apr 2016
You need to use two different variables or a cell array of paths:
path1 = ['-I' fullfile(pwd,'tempInclude1')];
path2 = ['-I' fullfile(pwd,'tempInclude2')];
mex('-v',path1,path2,srcFile)
or
ipaths = {['-I' fullfile(pwd,'tempInclude1')], ['-I' fullfile(pwd,'tempInclude2')];}
mex('-v',ipaths{:}, srcFile)
I suggest reading up on how command mode differs from function calling mode. matlab command syntax vs function syntax
0 Comments
More Answers (0)
See Also
Categories
Find more on MATLAB Compiler in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!