最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

gcc,g++版本问题

互联网 admin 13浏览 0评论

gcc,g++版本 问题

先记录:
问题:github项目下载速度满,尝试修改hosts文件,重启后失败,长时间未能正常开机,通过机箱按钮重启后屏幕变成低分辨率,很卡,终端
输入:nvidia-smi
报错显示: NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running

查询很多网友博客,后来发现是内核更新,导致390 驱动掉了,但由于一开始不知道,卸载驱动重装,没有解决,之后更换内核到上一个版本4.18.0.18,重装驱动390 ,和自动安装推荐版本仍然报一样的问题,nvidia setting 图形 空白。
之后看到有网友评论是gcc 版本问题。

现在记录尝试过程:
Ubuntu18.04自带了两个版本的GCC,分别为6.4.0 和 7.3.0。
但因为之前安装tensorflow cuda 等版本问题,gcc,g++降级过两次,分别是5 和4.8.

所以
gcc 在 /usr/bin 目录下
1、通过下面两条指令来查看:

ls /usr/bin/gcc*
ls /usr/bin/g++*
查看系统已安装版本,如无所需版本自行安装

共有4个版本

gcc -v 查看系统当前使用的版本

将某个版本加入gcc候选中,最后的数字是优先级,我自己是直接设为100或其他(测试没有问题),指令如下:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 100

相应其他版本加入候选,g++ 同理

完成上面的操作之后,我们就可以通过下面的指令来选择不同的gcc和g++的版本了,(注意使用之前确保至少有两个gcc或者g++的版本进行了第3步的操作):
sudo update-alternatives --config gcc
sudo update-alternatives --config g++

可以实现手动切换版本
注意一个问题:

当切换使用了其他版本的gcc时,请务必保持g++的版本和gcc版本的一致性,否则用cmake配置出来的项目遇到c++代码还是会用之前版本的gcc。

如果想删除可选项的话可以键入以下指令:

sudo update-alternatives --remove gcc /usr/bin/gcc-6

现在将系统gcc,g++ 版本配置为ubuntu18.04 自带版本7.3,手动选择 对应编号(gcc,g++保持一致)

卸载旧驱动:sudo apt remove --purge nvidia*,有残留加一句:sudo apt autoremove
重新安装390 版本驱动,考虑到之后的tensorlow 版本,cuda版本

个人觉得
命令安装(简单方式):最好不要通过网上各种 的不同的教程,禁用nouveau ,关闭x-windom 等 方式安装,容易迁出其他一大堆问题。。。。。。

sudo apt install nvidia-390
sudo reboot

屏幕分辨率变好 ,成为 1920 *1080 (16:9)
成功?
输入:nvidia-smi
显示 390.116 版本
nvidia-setting
OK!!!

未完待续。。。

参考:
.html

gcc,g++版本 问题

先记录:
问题:github项目下载速度满,尝试修改hosts文件,重启后失败,长时间未能正常开机,通过机箱按钮重启后屏幕变成低分辨率,很卡,终端
输入:nvidia-smi
报错显示: NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running

查询很多网友博客,后来发现是内核更新,导致390 驱动掉了,但由于一开始不知道,卸载驱动重装,没有解决,之后更换内核到上一个版本4.18.0.18,重装驱动390 ,和自动安装推荐版本仍然报一样的问题,nvidia setting 图形 空白。
之后看到有网友评论是gcc 版本问题。

现在记录尝试过程:
Ubuntu18.04自带了两个版本的GCC,分别为6.4.0 和 7.3.0。
但因为之前安装tensorflow cuda 等版本问题,gcc,g++降级过两次,分别是5 和4.8.

所以
gcc 在 /usr/bin 目录下
1、通过下面两条指令来查看:

ls /usr/bin/gcc*
ls /usr/bin/g++*
查看系统已安装版本,如无所需版本自行安装

共有4个版本

gcc -v 查看系统当前使用的版本

将某个版本加入gcc候选中,最后的数字是优先级,我自己是直接设为100或其他(测试没有问题),指令如下:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 100

相应其他版本加入候选,g++ 同理

完成上面的操作之后,我们就可以通过下面的指令来选择不同的gcc和g++的版本了,(注意使用之前确保至少有两个gcc或者g++的版本进行了第3步的操作):
sudo update-alternatives --config gcc
sudo update-alternatives --config g++

可以实现手动切换版本
注意一个问题:

当切换使用了其他版本的gcc时,请务必保持g++的版本和gcc版本的一致性,否则用cmake配置出来的项目遇到c++代码还是会用之前版本的gcc。

如果想删除可选项的话可以键入以下指令:

sudo update-alternatives --remove gcc /usr/bin/gcc-6

现在将系统gcc,g++ 版本配置为ubuntu18.04 自带版本7.3,手动选择 对应编号(gcc,g++保持一致)

卸载旧驱动:sudo apt remove --purge nvidia*,有残留加一句:sudo apt autoremove
重新安装390 版本驱动,考虑到之后的tensorlow 版本,cuda版本

个人觉得
命令安装(简单方式):最好不要通过网上各种 的不同的教程,禁用nouveau ,关闭x-windom 等 方式安装,容易迁出其他一大堆问题。。。。。。

sudo apt install nvidia-390
sudo reboot

屏幕分辨率变好 ,成为 1920 *1080 (16:9)
成功?
输入:nvidia-smi
显示 390.116 版本
nvidia-setting
OK!!!

未完待续。。。

参考:
.html

发布评论

评论列表 (0)

  1. 暂无评论