Fix problem when mex .cpp file

52 visualizzazioni (ultimi 30 giorni)
Nam Bui Nguyen Hoai
Nam Bui Nguyen Hoai il 16 Ott 2013
Commentato: khadija portu il 16 Ago 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]

Risposta accettata

Friedrich
Friedrich il 17 Ott 2013
Hi,
this is Microsoft Bug see here.
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 Commenti
Sreeraj a
Sreeraj a il 21 Giu 2017
Thanks !!! That was really Cool
Arunraj anil
Arunraj anil il 21 Mag 2018

Wonderful job man, You save my Day. Sooper Cool.

Accedi per commentare.

Più risposte (4)

James Tursa
James Tursa il 16 Ott 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 Commento
Jan
Jan il 16 Ott 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?

Accedi per commentare.


izem
izem il 16 Set 2016
Thank you It workssssssssssss

Néstor Rodguez
Néstor Rodguez il 6 Dic 2016
Thank you for all! It's works correctly!

Shubham Pachori
Shubham Pachori il 29 Giu 2017
Modificato: Walter Roberson il 29 Giu 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 Commenti
Walter Roberson
Walter Roberson il 29 Giu 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
khadija portu
khadija portu il 16 Ago 2020
IT IS NOT CLEAR COULD YOU PROVIDE FOR US MORE INFORMATION

Accedi per commentare.

Categorie

Scopri di più su Write C Functions Callable from MATLAB (MEX Files) in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by