轉載一篇大佬的文章,解決了困擾我多天的環境問題,原文連結:
https://debug.fanzheng.org/post/install-gcc-4.9.2-on-debian-9.html
Debian 9自帶的是gcc 6.3.0,現有需求要安裝gcc 4.9.2,這一版本是Debian 8源中的版本。
采取的方案是下載下傳安裝Debian 8的gcc和g++包及其依賴包,然後使用
update-alternatives
管理gcc版本。
安裝前需要確定安裝了Debian 9的gcc 6.3.0:
sudo apt install gcc g++
。
首先下載下傳安裝必要的package(有一些依賴gcc 6.3.0已經有了,版本要求已經達到,就不裝了):
mkdir -p $MYWORK/library/deb/
cd $MYWORK/library/deb/
wget http://mirrors.tuna.tsinghua.edu.cn/debian-security/pool/updates/main/g/gcc-4.9/gcc-4.9_4.9.2-10+deb8u2_amd64.deb
wget http://mirrors.tuna.tsinghua.edu.cn/debian-security/pool/updates/main/g/gcc-4.9/cpp-4.9_4.9.2-10+deb8u2_amd64.deb
wget http://mirrors.tuna.tsinghua.edu.cn/debian-security/pool/updates/main/g/gcc-4.9/gcc-4.9-base_4.9.2-10+deb8u2_amd64.deb
wget http://mirrors.tuna.tsinghua.edu.cn/debian-security/pool/updates/main/g/gcc-4.9/libgcc-4.9-dev_4.9.2-10+deb8u2_amd64.deb
wget http://mirrors.tuna.tsinghua.edu.cn/debian-security/pool/updates/main/g/gcc-4.9/libstdc++-4.9-dev_4.9.2-10+deb8u2_amd64.deb
wget http://mirrors.tuna.tsinghua.edu.cn/debian-security/pool/updates/main/g/gcc-4.9/libasan1_4.9.2-10+deb8u2_amd64.deb
wget http://mirrors.tuna.tsinghua.edu.cn/debian-security/pool/updates/main/g/gcc-4.9/g++-4.9_4.9.2-10+deb8u2_amd64.deb
wget http://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/c/cloog/libcloog-isl4_0.18.2-1+b2_amd64.deb
wget http://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/i/isl/libisl10_0.12.2-2_amd64.deb
sudo dpkg -i *.deb
接着,設定
update-alternatives
以管理gcc版本:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 10 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 20 --slave /usr/bin/g++ g++ /usr/bin/g++-6
其他的
/usr/bin/cpp
由于一般不會有問題,就不設定了。
如果需要切換版本,需要執行
sudo update-alternatives --config gcc
,然後在裡面選。