[ubuntu]GCC与CUDNN版本不兼容

前言:距离上次的更新都过了4个月了…是在了太懒了…假期即将过去,尽量在回去之前做点啥…
由于毕设要做的方向涉及到原作者的代码文件是在linux系统上做的,在win10捣鼓了几天后,只好抄起我一年前的老本行ubuntu>.>
首先当然是查看我的cuda 和cudnn。
使用这篇博客的方法验证CUDA成功后,发现无法验证CUDNN,其中,在make clean && make这一步中报错。
BUG报错:

error: #error -- unsupported GNU version! gcc versions later than 6 are not supported!

在这里插入图片描述
这个问题去年刚安装ubuntu系统时候就接触过,大致记得好像是GCC版本过高与CUDA不兼容,因为期间ubuntu自动更新了一次,从16.04升级到了18.04,所以可能就出现了这个问题。
于是首先我通过查看ubunutu 和GCC版本。

cat /etc/issue
gcc -v
g++ -v

发现我的GCC版本是7.4.0。

gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1) 

然后我开始了降级,由于我记得之前是降级到了4.7,但是出现了以下问题:

E: 无法定位软件包 g++-4.7
E: 无法按照 glob ‘g++-4.7’ 找到任何软件包
E: 无法按照正则表达式 g++-4.7 找到任何软件包

经过查阅资料后,觉得可能是不提供4.7版本的下载,版本太低了。
于是我按照其他博主的方法,把GCC降级到5.5。

下载gcc/g++ 5

sudo apt-get install -y gcc-5
sudo apt-get install -y g++-5

链接gcc/g++实现降级

cd /usr/bin
sudo rm gcc
sudo ln -s gcc-5 gcc
sudo rm g++
sudo ln -s g++-5 g++

查看版本,降级成功。
在这里插入图片描述

然后再次查看cudnn,编译通过!

cp -r /usr/src/cudnn_samples_v7/ $HOME
cd  $HOME/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN

在这里插入图片描述
在这里插入图片描述

参考大佬博客:
https://blog.csdn.net/CAU_Ayao/article/details/83987120?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
https://blog.csdn.net/qq_18649781/article/details/89848797
https://blog.csdn.net/dudu815110/article/details/88592558#commentBox

猜你喜欢

转载自blog.csdn.net/weixin_43823854/article/details/104528397