在MATLAB的老版本中有一些关于这方面的文章,但它们似乎不适用于R2016a。
我正在尝试在Ubuntu16.04上安装MatConvNet。当我按照here描述的方式运行vl_compilenn命令时,它会给出如下警告:
Building with 'gcc'.
Warning: You are using gcc version '5.4.1'. The version of gcc is not supported.
The version currently supported with MEX is '4.7.x'. For a list of currently supported
compilers see: http://www.mathworks.com/support/compilers/current_release.我已经用apt-get install gcc-4.7 g++-4.7安装了gcc-4.7和g++-4.7。如何强制MATLAB使用这些版本而不是默认版本?
发布于 2017-03-28 20:39:04
一些提示,并不是一个完整的教程如何做到这一点。可能最简单的方法是编辑MATLAB的Mex XML配置文件:
mex -setup C
cc = mex.getCompilerConfigurations('C', 'Selected')
edit(cc.MexOpt)mex设置通常会在主文件夹(~/.matlab/<version>/mex_C_glnca64.xml)中创建一个副本,因此您应该可以在没有根目录的情况下对其进行编辑。
在这里,您可能需要更改该部分:
<GCC>
<cmdReturns name="which gcc" />
</GCC>我猜它会搜索您的gcc版本的gcc命令的位置,并将其赋给$GCC变量。此外,您还可以更改标题中的版本名称。
此外,您还需要对C++语言执行相同的操作。
发布于 2018-02-10 02:21:35
这适用于R2016b:
ln安装所需的GCC版本(我使用的是gcc-4.9和g++-4.9 )。
bin文件夹,即使用ln安装以下链接
- `ln -s /usr/bin/gcc-4.9 ~/bin/gcc`
- `ln -s /usr/bin/g++-4.9 ~/bin/g++`
如果使用
nvcc文件夹中创建一个名为~/bin的文件,其中包含以下内容(不要忘记将其设置为可执行文件: CUDA内容:
#!/bin/sh
exec /usr/lib/nvidia-cuda-toolkit/bin/nvcc -ccbin gcc-4.9 "$@"如有必要,将/usr/lib/nvidia-cuda-toolkit/bin/nvcc替换为nvcc二进制文件的正确位置。
https://stackoverflow.com/questions/42830823
复制相似问题