首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何强制MATLAB 2016a使用gcc-4.7.x而不是我已有的(gcc-5.4.1)?

如何强制MATLAB 2016a使用gcc-4.7.x而不是我已有的(gcc-5.4.1)?
EN

Stack Overflow用户
提问于 2017-03-16 18:04:24
回答 2查看 1K关注 0票数 1

在MATLAB的老版本中有一些关于这方面的文章,但它们似乎不适用于R2016a。

我正在尝试在Ubuntu16.04上安装MatConvNet。当我按照here描述的方式运行vl_compilenn命令时,它会给出如下警告:

代码语言:javascript
复制
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使用这些版本而不是默认版本?

EN

回答 2

Stack Overflow用户

发布于 2017-03-28 20:39:04

一些提示,并不是一个完整的教程如何做到这一点。可能最简单的方法是编辑MATLAB的Mex XML配置文件:

代码语言:javascript
复制
mex -setup C
cc = mex.getCompilerConfigurations('C', 'Selected')
edit(cc.MexOpt)

mex设置通常会在主文件夹(~/.matlab/<version>/mex_C_glnca64.xml)中创建一个副本,因此您应该可以在没有根目录的情况下对其进行编辑。

在这里,您可能需要更改该部分:

代码语言:javascript
复制
<GCC>
    <cmdReturns name="which gcc" />
</GCC>

我猜它会搜索您的gcc版本的gcc命令的位置,并将其赋给$GCC变量。此外,您还可以更改标题中的版本名称。

此外,您还需要对C++语言执行相同的操作。

票数 0
EN

Stack Overflow用户

发布于 2018-02-10 02:21:35

这适用于R2016b:

  1. 使用ln

安装所需的GCC版本(我使用的是gcc-4.9和g++-4.9 )。

  • 在您的家中创建一个bin文件夹,即使用ln

安装以下链接

代码语言:javascript
复制
- `ln -s /usr/bin/gcc-4.9 ~/bin/gcc`
- `ln -s /usr/bin/g++-4.9 ~/bin/g++`

如果使用

  1. ,请在nvcc文件夹中创建一个名为~/bin的文件,其中包含以下内容(不要忘记将其设置为可执行文件: CUDA

内容:

代码语言:javascript
复制
#!/bin/sh
exec /usr/lib/nvidia-cuda-toolkit/bin/nvcc -ccbin gcc-4.9 "$@"

如有必要,将/usr/lib/nvidia-cuda-toolkit/bin/nvcc替换为nvcc二进制文件的正确位置。

  1. 打开MATLAB并按照instructions编译MatConvNet。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42830823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档