Linux下非root用户解决限制gcc、g++版本升级问题

Linux下非root用户解决限制gcc、g++版本升级问题

》》》针对非root用户直接运行其他平台编译好的程序,会报出
在这里插入图片描述
本文采取升级gcc版本做法,项目需求升级到gcc-4.8.5

下载GCC源码以及所有依赖包

分成服务器联网和断网两种情况

联网

执行命令行

    1.wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz
    2.tar –zxvf gcc-4.8.5.tar.gz
    3.cd gcc-4.8.5
    4. ./contrib/download_prerequisites //执行脚本自动下载、安装依赖包

断网

   wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz
   wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.2.tar.bz2
   wget ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.3.2.tar.bz2
   wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-0.8.1.tar.gz

手动下载gcc-4.8.5.tar.gz、gmp-4.3.2.tar.gz、mpfr-2.4.2.tar.gz、mpc-0.8.1.tar.gz上传到用户

	tar –zxvf gcc-4.8.5.tar.gz
	cd gcc-4.8.5  

将gmp-4.3.2.tar.gz、mpfr-2.4.2.tar.gz、mpc-0.8.1.tar.gz移入gcc-4.8.5
通过查看cat ./contrib/download_prerequisites 脚本的动作 手动解压、安
装依赖包
在这里插入图片描述

      1. tar -xjf mpfr-2.4.2.tar.gz         //解压
         ln -sf mpfr-2.4.2  mpfr      //建立软连接
      2. tar -xjf gmp-4.3.2.tar.gz
	     ln –sf gmp-4.3.2 gmp
	  3. tar -xzf mpc-0.8.1.tar.gz
	     ln –sf mpc-0.8.1  mpc

生成Makefile 编译新的gcc、安装

	cd gcc-4.8.5
	mkdir objdir  
	cd objdir
	../configure --disable-checking --enable-languages=c,c++ --disable-multilib --prefix=/unlimited/install/gcc-4.8 --enable-threads=posix
	make //执行makefile  (可用多线程 过程漫长 大约3GB保证磁盘空间够用  可用df 查看)
	make install  //安装 (不那么漫长 300MB   du -sh * 可查看当前文件大小)

/unlimited/install/gcc-4.8 是一个当前用户不受限制的绝对路径
例如: /home/username/myinstall/gcc-4.8 依葫芦画瓢也可将其
他应用安装myinstall下面。

配置环境变量

环境配置有好几种,这边不多哔哔赖赖,可以看看这里:
https://blog.csdn.net/byxdaz/article/details/88857720

编辑 ~/.bashrc 文件

		vim ~/.bashrc
		export PATH= /home/username/myinstall/gcc-4.8/bin: /home/username/myinstall/gcc-4.8/lib64$PATH  
		export LD_LIBRARY_PATH= /home/username/myinstall/gcc-4.8/lib64: /home/username/myinstall/gcc-4.8/lib$LD_LIBRARY_PATH
		source ~/.bashrc  //更新该文件

到这算是成功了,
用 gcc -v 查看当前用户版本

在这里插入图片描述
用 ldd +可执行文件 查看
在这里插入图片描述

  • 8
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值