wsl2
已有gcc
版本为9.4.0
,但tensorflow2.3.0
需对应gcc7.3.1
tensorflow与cuda cudnn python bazel gcc版本对应关系
故需下载一个低版本的gcc
,但同时还想保留较高版本的gcc
,那么参考文章:深度学习环境搭建(二): Ubuntu不同版本gcc,CUDA,cuDNN共存,切换解决方案的做法,将两个版本同时保留,需要用到的时候按照命令进行切换。
1.安装低版本的gcc,g++
sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8
2.将低版本的gcc,g++加入到gcc列表中,分别设置优先级(例如将旧的设置为10,新的设置为20)
# set for old version
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 10
# set for high version
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 20
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 20
3.若需要切换gcc、g++的版本,输入以下命令后选择版本,便可以实现不同版本gcc之间的切换。(注意gcc、g++要同时切换,保持版本一致), 测试结果如下:
sudo update-alternatives --config gcc
sudo update-alternatives --config g++
将gcc-7
设置版本为默认,编译结束后,记得sudo update-alternatives --config gcc
将gcc-9
版本切换为默认。