Is it possible to mex a .cpp include lots of .h file provide by mathworks.

1 次查看(过去 30 天)
I want to mex a .cpp file, however, the .cpp file include a .h file (Refer as 1.h) provided by mathworks, 1.h include another .h file (Refer as 2.h) provided by mathworks, as a result, there are lots of .h file from mathworks are included. When call mex, it will return an error due to there is some .h file by mathworks not found. I wonder if it's possible to mex file without find and copy all .h files into one files?
  1 个评论
James Tursa
James Tursa 2017-11-22
编辑:James Tursa 2017-11-22
This happens all the time in the normal course of mexing files. E.g., having
#include "mex.h"
will include that file, and inside that file is this line
#include "matrix.h"
So just doing regular mexing already does what you apparently are having problems with ... it includes an additional file that you didn't explicitly specify.
Can you give more details as to how you are doing your compiling, and what exactly are the includes that you have in your code?

请先登录,再进行评论。

回答(3 个)

Walter Roberson
Walter Roberson 2017-11-21
"I wonder if it's possible to mex file without find and copy all .h files into one files"
No.
  8 个评论
xian zhao
xian zhao 2017-11-23
yes,I already implement your suggestion,also the file are copied to the same one fold. still there is the same error. i will share my code soon for your convenient to evaluate.

请先登录,再进行评论。


xian zhao
xian zhao 2017-11-23
Please find the code and other files related.

xian zhao
xian zhao 2017-11-29
I get the solution, I mex my code with MinGW before. However it's not compatilbe with .lib generated by microsoft VS. And when I try mex with microsoft visual studio, the mex proceed successfully.

类别

Help CenterFile Exchange 中查找有关 C MEX 文件应用程序 的更多信息

Community Treasure Hunt

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

Start Hunting!