因为要安装detectron2,需要gcc/g++ >= 5.4,服务器的sudo又不能用,所以查了很多博客来进行无root升级GCC。网上的博客都写的太不走心了,make的时候的路径和bashrc里面的路径不一致,少个冒号等等,导致我出了很大的问题。所以一篇确实可行的博客实在是太有必要了。强烈建议博客加入举报功能,看见乱写的博客就举报一波,省的浪费广大网友的时间。这篇博客我亲自跑通了,总之我写的没问题,但是大家每个人可能都会碰到仅属于自己的幺蛾子,那我就没办法了。反正我这里,按我这么做就是好使。下面进入正题。

1、下载并解压所需版本

这一步我都遇到过坑。我这里写个切实可下载的,就是速度稍微慢点。

wget http://ftp.gnu.org/gnu/gcc/gcc-5.4.0/gcc-5.4.0.tar.gz
#5.4.0可以替换为你需要的版本号
tar –zxvf gcc-5.4.0.tar.gz
cd gcc-5.4.0
./contrib/download_prerequisites
#这一步是执行脚本自动下载安装所需的依赖

2、编译,安装

cd gcc-5.4.0
mkdir objdir  
cd objdir
../configure --disable-checking --enable-languages=c,c++ --disable-multilib --prefix=/home/username/gcc-5.4 --enable-threads=posix
#我这里使用的安装路径是/home/username/gcc-5.4,大家可以换成别的路径
make //执行makefile  (过程漫长,可用多线程,但我没用)
make install  

3、设置环境变量

这一步其他博客写的大部分有问题,路径和之前make的时候使用的--prefix压根对不上,然后可能还有缺少冒号的问题,总之那些人连run都没run过就瞎写的人太可恶。

vim ~/.bashrc
export PATH=/home/username/gcc-5.4/bin:/home/username/gcc-5.4/lib64:$PATH
export LD_LIBRARY_PATH=/home/username/gcc-5.4/lib/:$LD_LIBRARY_PATH
#注意这里的path一定要和make的时候--prefix的path要对的上
source ~/.bashrc

4、验证安装结果

gcc -v
g++ -v

Logo

更多推荐