Fix problem when mex .cpp file
55 views (last 30 days)
Show older comments
Nam Bui Nguyen Hoai
on 16 Oct 2013
Commented: khadija portu
on 16 Aug 2020
Hi all, I have problem when compile mex file.
>> mex GCoptimization.cpp
GCoptimization.cpp
c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\intrin.h(26) : fatal error C1083: Cannot open include file: 'ammintrin.h': No such file or directory
C:\PROGRA~1\MATLAB\R2012B\BIN\MEX.PL: Error: Compile of 'GCoptimization.cpp' failed.
Error using mex (line 206) Unable to complete successfully." What is wrong? I have copy all cpp and .h "C:\Users\nambnh\Documents\MATLAB".
[EDITED, code formatted to clarify the line breaks]
0 Comments
Accepted Answer
Friedrich
on 17 Oct 2013
Hi,
Since I am such a cool guy I attached the header ammintrin.h file which needs to be placed in "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\". Please rename it from ammintrin.m to ammintrin.h because one cannot upload .h files.
I hope that helps.
15 Comments
More Answers (4)
James Tursa
on 16 Oct 2013
Looks like you have spaces in your paths. Rather than passing these arguments to the mex function via the command line "string" approach, try using the function call syntax instead so you can explicitly separate arguments even if they have spaces. And don't put your header .h files in the argument list ... they should already be included in your source code. Also I am not sure why you apparently list the same source file twice.
1 Comment
Jan
on 16 Oct 2013
@James: After formatting the question, it gets clear, that the source file was not listed twice. Formatting is such useful that I cannot understand, why so many newcomers do not use the power or at least ask how to use it. Is it not usual to read a question after one has posted it?
Shubham Pachori
on 29 Jun 2017
Edited: Walter Roberson
on 29 Jun 2017
Error using mex
gco_matlab.cpp
C:\Users\**\gco-v3.0\matlab\gco_matlab.cpp(8)
: error C2371: 'mwSize' : redefinition; different basic types
c:\program files\matlab\r2016a\extern\include\tmwtypes.h(795) : see
declaration of 'mwSize'
C:\Users\**\gco-v3.0\matlab\gco_matlab.cpp(9)
: error C2371: 'mwIndex' : redefinition; different basic types
c:\program files\matlab\r2016a\extern\include\tmwtypes.h(796) : see
declaration of 'mwIndex'
Error in GCO_BuildLib (line 68)
eval(mexcmd); % compile and link in one step
Error in GCO_UnitTest (line 48)
GCO_BuildLib; disp('BuildLib PASSED');
Hi I am unable to compile gco library in MATLAB2016a in windows. Could someone please help and explain me to get rid of this error?
2 Comments
Walter Roberson
on 29 Jun 2017
Looking at those messages, it appears to me that on line 8 of gco_matlab.cpp that it attempts to define mwSize and on line it attempts to define mwIndex, but that those are already defined by the tmwtypes.h header file. If I am correct, then comment out the typedef at lines 8 and 9 of gco_matlab.cpp
See Also
Categories
Find more on Write C Functions Callable from MATLAB (MEX Files) in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!