1. wsl2已有gcc 版本为9.4.0,但tensorflow2.3.0需对应gcc7.3.1

tensorflow与cuda cudnn python bazel gcc版本对应关系
WSL2+tensorflow-gpu 2.3.0 C++ 源码编译-LMLPHP

WSL2+tensorflow-gpu 2.3.0 C++ 源码编译-LMLPHP

故需下载一个低版本的gcc,但同时还想保留较高版本的gcc,那么参考文章:深度学习环境搭建(二): Ubuntu不同版本gcc,CUDA,cuDNN共存,切换解决方案的做法,将两个版本同时保留,需要用到的时候按照命令进行切换

ubuntu 22.04 安装gcc-7、g+±7

Ubuntu 20.04 上安装 gcc/g++7.5

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 gccgcc-9版本切换为默认。

12-02 05:01