필터 지우기
필터 지우기

Mex on Mavericks with R2012b

조회 수: 3 (최근 30일)
Felix
Felix 2013년 10월 25일
댓글: Arnaud Delorme 2016년 4월 18일
I am running Matlab R2012b and updated to Mac OS Mavericks and Xcode 5. Now I can't compile my c++ code into mex files anymore: /Applications/MATLAB_R2012b.app/bin/mex: line 305: llvm-gcc-4.2: command not found /Applications/MATLAB_R2012b.app/bin/mex: line 1326: llvm-g++-4.2: command not found
What to do?
  댓글 수: 2
Fabio
Fabio 2013년 10월 25일
I have the same problem here!!!
Yimeng Zhang
Yimeng Zhang 2013년 10월 28일
Can anybody provide a solution for R2013a? Thanks.

댓글을 달려면 로그인하십시오.

채택된 답변

rmm
rmm 2013년 10월 25일
편집: rmm 2013년 10월 25일
Hi,
I had the same problem. It seems that the new version of llvm-gcc is version 5.0. You can confirm the same for your system by typing
llvm-gcc --version
in terminal.
Assuming you've previously downloaded the MEX patch provided by Mathworks, my work-around was to modify the MacOSX 10.8 patch in the mexopts.sh file. For me this file was located in
/Users/<myname>/.matlab/R2012b/
At the bottom of the mexopts.sh file find the code block for #PATCH: MacOSX10.8 . Modify the following three lines to:
CC='llvm-gcc'
CXX='llvm-g++'
SDKROOT='/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/'
The version number was deleted from the definition of the first two variables. In the third variable's definition MacOSX10.8.sdk was changed to MacOSX10.9.sdk. Oddly, changing the the version from 4.2 to 5.0 in the first variables' definitions did not solve the problem, but completely deleting the version number did.
These changes allowed me to compile a project that was throwing the same error you were getting. Whether this work-around is best practice or not I don't know.
  댓글 수: 8
Florian Chapotot
Florian Chapotot 2015년 12월 3일
This solution from rmm also works with R2012b on Mac OSX 10.11 Yosemite ! Thank you
Arnaud Delorme
Arnaud Delorme 2016년 4월 18일
First, type "mex -setup" to make sure the file mexopts.sh exists. Second, make sure the SDK folder exist /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/, if not look list the content of /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/ to see which one to use. Then it worked for me.

댓글을 달려면 로그인하십시오.

추가 답변 (3개)

xinhao liu
xinhao liu 2013년 10월 25일
You should soft link the llvm compiler, In the terminal:
cd /usr/bin
sudo ln -fs clang llvm-gcc-4.2
sudo ln -fs clang++ llvm-g++-4.2
I think the Mathworks will release some patch for the problem later, but right now it works for me.
  댓글 수: 2
Rasim Dilan
Rasim Dilan 2013년 10월 28일
Thank you. This works well for me.
huijing
huijing 2013년 11월 9일
tried out so many solutions, finally this works for me, thank you very much

댓글을 달려면 로그인하십시오.


Xu Tian
Xu Tian 2013년 11월 15일
WOW!!! Thanks a lot! That does work for me!

Chris
Chris 2014년 10월 14일
Does this work around work for C-code as well?

카테고리

Help CenterFile Exchange에서 Introduction to Installation and Licensing에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by