Setup MEX compiler for R2014a for Linux
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Nathan
el 23 de Jun. de 2014
Comentada: Jay Stanley
el 16 de Mzo. de 2018
Ubuntu 14.04 comes with GCC 4.8. Matlab 2014a only supports up to GCC 4.7. When I use 2013a I can set the mexopts.sh script to use GCC-4.7 by doing the following
1) In matlab, type mex -setup and press 1 to copy mexopts.sh to ~/.matlab/R2013b/mexopts.sh
2) From the terminal, edit the file ~/.matlab/R2013b/mexopts.sh so that CC=’gcc’ change to –> CC=’gcc-4.7′ CCX=’g++’ change to –> CCX=’g++-4.7′
In 2014a the mexopts.sh file does not exist anymore. When I type mex -setup I get the following error:
>> mex -setup C++
Error using mex
No supported compiler or SDK was found. For options, visit http://www.mathworks.com/support/compilers/R2014a/glnxa64.
I know GCC 4.7 is installed because it works for R2013b but how do I set compiler in 2014a?
1 comentario
Awais Ashfaq
el 22 de Feb. de 2016
Hi, I have a similar problem. Where should I copy the mexopts.sh? I can't find any folder MATLABversion? Cheers
Respuesta aceptada
Mukul Rao
el 14 de Jul. de 2014
Hi,
Beginning version R2014a, MATLAB automatically configures the mex pseudo compiler to use a supported compiler (such as gcc 4.7x ) on your machine. This leaves the use of the command “mex –setup” redundant unless you would like to use a supported compiler that is different from the default selection, or force MATLAB to use an unsupported compiler.
Did you try mexing a simple mex file like “timestwo.c” to check if the “mex file_name.x” command works on R2014a?
>> copyfile(fullfile(matlabroot,'extern','examples','refbook',...
'timestwo.c'), '.', 'f');
>> mex timestwo.c
Make sure you have write permission in your current working directory
6 comentarios
Awais Ashfaq
el 22 de Feb. de 2016
Hi, I have a similar problem. Where should I copy the mexopts.sh? I can't find any folder MATLABversion? Cheers
wided hechkel
el 11 de Feb. de 2017
Hello,
Should i delete the mexopts.sh from MatlabRoot"/bin/mexopts.sh after changing and copying it to ~/.matlab/"MatlabVersion" ?
Más respuestas (3)
JIAWEI WU
el 26 de En. de 2015
Thanks Sergey, I copied the file mexopts.h as you said, it works here. it cost me one night to fix it, until now, finally, it has been solved. you are so great!
0 comentarios
Dave
el 14 de Abr. de 2017
Editada: Dave
el 16 de Abr. de 2017
My solution for R2017a on Ubuntu 16.04.
First install the version of GCC Matlab expects:
sudo apt-get install gcc-4.9
Then edit the configuration file to point to this:
cd ~/.matlab/R2017a
sudo chmod 777 mex_C_glnxa64.xml
gedit mex_C_glnxa64.xml
Within that xml file, replace:
Location="$gcc"
with
Location="/usr/bin/gcc-4.9"
Save file and Matlab should no longer produce wrong version warnings.
1 comentario
wided hechkel
el 11 de Feb. de 2017
Hello,
Should i delete the mexopts.sh from MatlabRoot"/bin/mexopts.sh after changing and copying it to ~/.matlab/"MatlabVersion" ?
1 comentario
jie Chang
el 12 de Mzo. de 2017
Hello,could you tell me where the direction ~/.matlab/“MatlabVersion”is? thank you.
Ver también
Categorías
Más información sobre Write C Functions Callable from MATLAB (MEX Files) en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!