[Linux] 非root安装GCC9.1.0

说明

一般Linux系统自带或公共的GCC版本都很低,如目前我们的服务器版本的GCC还停留在gcc-4.9.3,而官网已到达9.2版本(下载http://ftp.gnu.org/gnu/gcc/
,有些项目编译时需要更高版本的GCC,这时就需要自己额外安装一个了。

网上关于非 root用户的教程有很多,但大多数都很旧且不靠谱,我找到了几个比较实用的,总结一下,亲测有效。

安装GCC主要依赖三个库:GMP, MPFRMPC,另还有个ISL库(不知是否是必需)。之前的旧版本可能需要手动依次安装这些依赖库,但较新的版本其实只需要在GCC目录下运行./contrib/download_prerequisites命令就可以自动下载这几个组件,也不用担心版本问题。

另外一点和其他软件不同的地方在于,GCC不能直接在其源码中编译,而是在它的目录下新建一个文件夹,然后进入这个文件夹配置并编译安装。了解了这两点,安装GCC就一路畅通,不过编译很慢,耗时2小时以上。

安装

假设我现在的路径为:/path/to/software

wget http://ftp.gnu.org/gnu/gcc/gcc-9.1.0/gcc-9.1.0.tar.gz
tar -xvf gcc-9.1.0.tar.gz
mkdir gcc9  #作为安装路径
cd gcc-9.1.0
./contrib/download_prerequisites
#等待安装好依赖
mkdir gcc-9.1.0 #作为编译路径,不能直接在源码中编译
../configure --disable-checking --enable-languages=c,c++ --disable-multilib --prefix=/path/to/software/gcc9 --enable-threads=posix
make -j32 && make install

安装成功应该包括以下文件目录:

添加到环境变量,就能覆盖旧版本了。

#路径要在环境变量前
export PATH=/path/to/software/gcc9/bin:/path/to/software/gcc9/lib64:$PATH
export LD_LIBRARY_PATH=/path/to/software/gcc9/lib/:$LD_LIBRARY_PATH

Ref: http://www.xieqiang.site/2017/07/31/install-gcc-5.4-without-root/

原文地址:https://www.cnblogs.com/jessepeng/p/11674780.html

时间: 2024-10-29 03:14:23

[Linux] 非root安装GCC9.1.0的相关文章

[linux] 非root安装Python2及其模块

需求 系统自带的python2版本太低,且没有想要的模块,非root用户无法安装.有些模块是python2写的,无法用python3,所以自己下载一个高版本的python2,可以自由下载模块. 实现 1.安装python2.7.15 最新的2.7.16可能不稳定,下了个2018年的修复版本. wget https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz tar -xzf Python-2.7.15.tgz cd Python-2.

[Linux] 非root安装Lefse软件及其数据分析

说明 Lefse软件是宏组学物种研究常用软件,一般大家用在线版本即可.但要搭建在Linux集群环境中有点烦,记录一下折腾过程. 安装 这个软件是python2写的,因此假设我已经安装好了较高版本的python2以及pip等工具,在此基础上来安装lefse. lefse下载地址:https://bitbucket.org/nsegata/lefse/src/default/.这个网站有丰富的学习内容和教程,包括MetaPhIAn等流程,有时间去好好看看. lefse放在了bitbucket上,克隆

linux 非root安装gcc3.4.3

1,从http://ftp.gnu.org/gnu/下载需要的文件 wget -c http://ftp.gnu.org/gnu/gmp/gmp-4.3.2.tar.bz2wget -c http://ftp.gnu.org/gnu/mpfr/mpfr-2.4.2.tar.bz2wget -c http://ftp.gnu.org/gnu/mpc/mpc-1.0.1.tar.gzwget -c http://ftp.gnu.org/gnu/gcc/gcc-3.4.3/gcc-3.4.3.tar.

非root安装Memcached

1,     安装依赖包 确保服务器中已经安装了Memcached的依赖包. [[email protected]~]#yum-y install   --skip-broken gcc gcc-c++autoconf automake zlib zlib-devel   pcre-developenssl-devel libevent libevent-devel.x86_64 2,     创建Memcached的安装用户 [[email protected]~]# groupadd dfh

【翻译自mos文章】在Oracle Linux 7上安装11.2.0.4时遇到缺少 pdksh-5.2.14 包

在Oracle Linux 7上安装11.2.0.4时遇到缺少 pdksh-5.2.14 包 来源于: Missing pdksh-5.2.14 package during Oracle database 11.2.0.4 install on Oracle Linux 7 (文档 ID 1962046.1) 适用于: Oracle Database - Enterprise Edition - Version 11.2.0.4 to 11.2.0.4 [Release 11.2] Linux

linux非root用户使用秘钥登陆实现方法

linux非root用户使用秘钥登陆实现方法: 1.拷贝/root/.ssh/公钥放到普通用户家目录下的 authorized_keys里     2.修改/etc/ssh/sshd_config的参数,禁止root账号远程登陆使用,只允许普通用户远程登陆, 使用 su sudo切换使用root账号的权限

linux 非root 用户安装redis 安装

1,在Linux环境上下载gcc,通过源码安装得通过cc编译器进行安装.这时候得下载gcc.这时候使用root用户进行安装. yum -y install  gcc 2,接着编译需要使用jemalloc.得下载jemalloc 编译.使用yum安装得添加一下仓库源.改完仓库源,这时候就可以使用 yum install  jemalloc 下面这种方式是使用jemalloc源码包来进行编译. (1)下载源码安装包. wget   https://github.com/jemalloc/jemall

[R]Linux非root下安装PMCMRplus包(待解决)

PMCMR和PMCMRplus是用来做秩和检验的R包,在Linux上安装时,后面那个PMCMRplus包出现了问题. ERROR: dependency 'Rmpfr' is not available for package 'PMCMRplus' 安装Rmpfr依赖时,出现了如下问题: configure: error: MPFR Library must be at least version 3.0.0, see README ERROR: configuration failed fo

linux非root用户安装ncurses-devel依赖,解决configure: error: No curses library functions found

很明显,如果我们通过yum或rpm下载安装,始终无法绕开root用户,除非我们不用yum或rpm.是的,我们直接下载源码包,到ftp.gnu.org/pub/gnu/ncurses/我们可以下到最新的源码包ncurses-6.1.tar.gz,通过rz上传至非root用户wlf的soft目录下,回到根目录,我们把源码包解压: $ tar xzvf soft/ncurses-6.1.tar.gz 进入解压后目录,执行软件配置: $ cd ncurses-6.1 $ ./configure --pr