在OS X10.9上Matlab2012b无法编译使用mex编译的解决方法

来源:互联网 发布:淘宝怎么制作图片 编辑:程序博客网 时间:2024/05/29 16:18

最近在跑matlab项目,需要使用mex编译c/c++文件。结果出现如下错误:

/Applications/MATLAB_R2012a.app/bin/mex: line 305: llvm-gcc-4.2: command not found
/Applications/MATLAB_R2012a.app/bin/mex: line 1326: llvm-g++-4.2: command not found


貌似是兼容性的问题。我在网上google了超久的资料,其中找到了一个解决方法有效。无聊就写下来。就当翻译一下。原文在http://www.imagetracking.org.uk/?p=73相当easy。

 首先在http://www.mathworks.com/matlabcentral/answers/94092上找到10.8的patch,在matlab中打上。

 随后运行mex -setup,找到配置文件的路径。

使用你喜爱的编辑器打开,找到#patch的那一行: #PATCH: MacOSX10.8

将之后改成

CC='llvm-gcc'                                                                                                                                                               
                        CXX='llvm-g++'                                                                                                                                                              
                                                  
                        SDKROOT='/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk'                                                                
                                                                                                                                                                                                    
            MACOSX_DEPLOYMENT_TARGET='10.9' 

重启之后应该就ok了。

0 0