非root权限配置gcc

gcc下载网址:

Index of /gnu/gcc/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

tar解压,然后打开./contrib/download_prerequisites

可以看到三个依赖gmp,mpfr,mpc的要求版本。

依赖下载网站:

Index of /pub/gcc/infrastructure (gnu.org)

三个依赖的安装顺序:

gmp->mpfr->mpc

分别解压,然后依次:

gmp:
./configure --prefix=/home/zjw/environment/gmp
mpfr
./configure --prefix=/home/zjw/environment/mpfr --with-gmp=/home/zjw/environment/gmp/
mpc
./configure --prefix=/home/zjw/environment/mpc --with-gmp=/home/zjw/environment/gmp/ --with-mpfr=/home/zjw/environment/mpfr/

然后加入到环境变量中

安装gcc:
./configure --prefix=/home/zjw/environment/gcc --enable-threads=posix --disable-checking --enable-language=c,c++ --disable-multilib --with-gmp=/home/zjw/environment/gmp/ --with-mpfr=/home/zjw/environment/mpfr/ --with-mpc=/home/zjw/environment/mpc/

gcc的环境变量如下:

export PATH=/home/zjw/environment/gcc/bin:/home/zjw/environment/gcc/lib64:$PATH
export LD_LIBRARY_PATH=/home/zjw/environment/gcc/lib/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/home/zjw/environment/gcc/lib64/:$LD_LIBRARY_PATH

### 安装GCCRoot用户环境 对于希望在无管理员权限情况下安装GCC的场景,存在多种解决方案。一种方法是在Ubuntu系统中利用特定策略实现root用户GCC安装[^1];另一种则是借助Conda创建独立的开发环境来部署所需版本的GCC工具链[^2]。 #### 利用预构建二进制文件或第三方库进行安装 针对Ubuntu平台,在不具备超级用户访问权的前提下,可以从官方或其他可信站点获取适用于目标架构的自解压包形式发布的GCC版本。下载完毕后将其放置到个人目录下并设置适当路径以便调用。这种方式无需复杂的配置过程就能快速获得可执行程序副本。 #### 使用Conda管理软件栈 当面临不同项目需求各异而本地已有的编译器版本不匹配时,采用Miniconda或者Anaconda作为包管理和环境隔离手段显得尤为便捷有效。通过简单的命令操作即可达成目的: ```bash conda create -n gccenv gcc_linux-64=7.5.0 source activate gccenv which gcc ``` 上述指令序列用于建立名为`gccenv`的新环境,并指定了要安装的具体GCC变体号——这里选用的是7.5.0版次。激活该环境后能够验证新安装成功的GNU Compiler Collection的位置信息。 #### 手动编译源代码方式 除了以上两种较为简易的方法外,还有更为灵活但也相对复杂的手工组装途径可供选择。这涉及到从官方网站或者其他渠道取得最新稳定发行版压缩包,接着按照文档指示逐步完成依赖项准备、配置选项调整以及最终的产品化流程。值得注意的是,在此期间可能会遇到诸如缺少某些低级支持函数定义等问题,这时就需要针对性地采取措施加以解决,比如关闭多体系结构兼容模式开关(`--disable-multilib`)或是单独引入缺失的关键组件[^3]。 ```bash tar xf gcc-*.tar.gz cd gcc-*/ ./contrib/download_prerequisites mkdir build && cd $_ ../configure --prefix=$HOME/gcc-install --disable-multilib ... make -j$(nproc) make install export PATH="$HOME/gcc-install/bin:$PATH" ``` 这段脚本展示了如何提取归档资料、进入工作区初始化前置条件、指定输出位置和其他必要参数启动正式装配作业直至最后更新全局变量使新建实例生效的过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值