Mex cannot find tmwtypes.h, "fatal error C1083: Cannot open include file", but it is in path
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I am trying to compile libsvm for my Matlab 2011b. However, when I do, I get this error:
>> make
libsvmread.c
c:\program files\matlab\r2011b\extern\include\matrix.h(294) : fatal error C1083: Cannot open include file: 'tmwtypes.h': No such file or directory
C:\PROGRA~1\MATLAB\R2011B\BIN\MEX.PL: Error: Compile of 'libsvmread.c' failed.
If make.m fails, please check README about detailed instructions.
I have looked in the folder C:\program files\matlab\r2011b\extern\include and tmwtypes.h is in there. I have also checked that this folder is in my Matlab Path.
I then tried mex -setup:
>> mex -setup
Welcome to mex -setup. This utility will help you set up
a default compiler. For a list of supported compilers, see
http://www.mathworks.com/support/compilers/R2011b/win64.html
Please choose your compiler for building MEX-files:
Would you like mex to locate installed compilers [y]/n? y
Select a compiler:
[1] Microsoft Software Development Kit (SDK) 7.1 in C:\Program Files (x86)\Microsoft Visual Studio 10.0
[2] Microsoft Visual C++ 2010 Express in C:\Program Files (x86)\Microsoft Visual Studio 10.0
[0] None
Compiler: 1
Please verify your choices:
Compiler: Microsoft Software Development Kit (SDK) 7.1
Location: C:\Program Files (x86)\Microsoft Visual Studio 10.0
Are these correct [y]/n? y
***************************************************************************
Warning: MEX-files generated using Microsoft Windows Software Development
Kit (SDK) require that Microsoft Visual Studio 2010 run-time
libraries be available on the computer they are run on.
If you plan to redistribute your MEX-files to other MATLAB
users, be sure that they have the run-time libraries.
***************************************************************************
Trying to update options file: C:\Users\windows\AppData\Roaming\MathWorks\MATLAB\R2011b\mexopts.bat
From template: C:\PROGRA~1\MATLAB\R2011b\bin\win64\mexopts\mssdk71opts.bat
Done . . .
**************************************************************************
Warning: The MATLAB C and Fortran API has changed to support MATLAB
variables with more than 2^32-1 elements. In the near future
you will be required to update your code to utilize the new
API. You can find more information about this at:
http://www.mathworks.com/support/solutions/en/data/1-5C27B9/?solution=1-5C27B9
Building with the -largeArrayDims option enables the new API.
**************************************************************************
I seem to have 2 compilers. I have tried using both and then redoing the make and it still throws the same error.
Also note that this problem is not exclusive to libsvm, trying to compile any c file causes this same error for me, ie: mex test_c_code.c.
I have also tried modifying the tmwtypes.h in matrix.h to "tmwtypes.h", but it did not chance the error.
I am running 64 bit windows 7, if that helps.
0 commentaires
Réponse acceptée
James Tursa
le 22 Mai 2013
As a temporary workaround, try copying tmwtypes.h to your current directory just to see if it is a directory problem.
Plus de réponses (2)
Duc Manh
le 16 Avr 2014
I got exactly the same problem when I was trying to compile the CUDA file. Even though I copied tmwtypes.h to the current working directory, it still appeared the same error. If you're able to make it work, plz show me more detail. Thanks a lot!
0 commentaires
Voir également
Catégories
En savoir plus sur MATLAB Compiler dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!