2012-01-18 102 views
0

我有一个C-文件我想在Matlab编译MS Visual Studio的10 对于我使用下面的命令:编译C文件在Matlab与Visual Studio

mex -v test.c 

的输出,我得到编译后如下:

test.c 
    Contents of C:\Temp\mex_kpuu4t\mex_tmp.rsp: 
    C:\Temp\mex_kpuu4t\test.obj 


--> link /out:"test.mexw64" /dll /export:mexFunction /MAP /LIBPATH:"C:\Program Files\MATLAB\R2011a\extern\lib\win64\microsoft" libmx.lib libmex.lib libmat.lib /implib:"C:\Temp\mex_kpuu4t\templib.x" /MACHINE:X64 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib @C:\Temp\mex_kpuu4t\mex_tmp.rsp 

Microsoft (R) Incremental Linker Version 10.00.30319.01 
Copyright (C) Microsoft Corporation. All rights reserved. 

C:\Temp\mex_kpuu4t\test.obj 
LINK : fatal error LNK1104: cannot open file 'test.mexw64' 

C:\PROGRA~1\MATLAB\R2011A\BIN\MEX.PL: Error: Link of 'test.mexw64' failed. 

任何一个想法可能出现什么问题吗?有趣的是,test.obj文件似乎没有写入临时文件夹,这可能是问题吗?

非常感谢!

+0

文件test.mexw64是否存在? – 2012-01-18 18:37:40

回答

1

也许你从之前编译过的mex中称为“测试”?如果是,它可能仍然加载到Matlab的内存中,并且不能被覆盖。试试:

clear mex 

然后再次编译。

相关问题