龙空技术网

⾮ root ⽤户⼿动编译安装 GCC

史提芬先森 151

前言:

此刻同学们对“centos6安装xfce4”都比较关心,小伙伴们都想要分析一些“centos6安装xfce4”的相关资讯。那么小编在网络上网罗了一些关于“centos6安装xfce4””的相关内容,希望朋友们能喜欢,各位老铁们快快来了解一下吧!

我们知道,关于 GCC 在 CentOS 下通过 yum 安装默认版本号,CentOS 5 是 4.1.2;CentOS 6 是 4.4.7;CentOS 7 是 4.8.3。很多时候在编译安装软件都需要高版本的 GCC,否则就会报错。那么如何升级 GCC 的版本呢?

首先要确认升级到的 GCC 版本号。目前 GCC 的最新版已经到了 5.2,而 CentOS 7 则依然使用其 4.8,所以基于兼容性考虑,可以选择升级到 4.8.5。GCC 官网:。

需要注意,编译安装 GCC 内存不小于 1GB,Swap 不小于 1GB,硬盘最低不小于 10GB,否则极有可能会中途报错退出。编译安装完后,目录 gcc-4.8.5 将会有 5GB 之多。

1. 下载源码

$ wget 
2. 下载依赖包

编译安装 GCC 需要依赖 mpc,mpfr,gmp,isl 包。前四个包是 GNU 软件,使用 GCC 源码里自带脚本可以轻松下载;最后一个 isl 不是 GNU 项目,需要我们手动去下载。

$ tar zxf gcc-4.8.5.tar.gz$ cd gcc-4.8.5$ ./contrib/download_prerequisites--2019-06-06 16:18:09--  => “mpfr-2.4.2.tar.bz2”Resolving gcc.gnu.org... 209.132.180.131Connecting to gcc.gnu.org|209.132.180.131|:21... connected.Logging in as anonymous ... Logged in!==> SYST ... done. ==> PWD ... done.==> TYPE I ... done. ==> CWD (1) /pub/gcc/infrastructure ... done.==> SIZE mpfr-2.4.2.tar.bz2 ... 1077886==> PASV ... done. ==> RETR mpfr-2.4.2.tar.bz2 ... done.Length: 1077886 (1.0M) (unauthoritative)100%[=================================================================================>] 1,077,886 249K/s in 4.2s2019-06-06 16:18:19 (249 KB/s) - “mpfr-2.4.2.tar.bz2” saved [1077886]--2019-06-06 16:18:20--  => “gmp-4.3.2.tar.bz2”Resolving gcc.gnu.org... 209.132.180.131Connecting to gcc.gnu.org|209.132.180.131|:21... connected.Logging in as anonymous ... Logged in!==> SYST ... done. ==> PWD ... done.==> TYPE I ... done. ==> CWD (1) /pub/gcc/infrastructure ... done.==> SIZE gmp-4.3.2.tar.bz2 ... 1897483==> PASV ... done. ==> RETR gmp-4.3.2.tar.bz2 ... done.Length: 1897483 (1.8M) (unauthoritative)100%[=================================================================================>] 1,897,483 210K/s in 7.7s2019-06-06 16:18:30 (239 KB/s) - “gmp-4.3.2.tar.bz2” saved [1897483]--2019-06-06 16:18:31--  => “mpc-0.8.1.tar.gz”Resolving gcc.gnu.org... 209.132.180.131Connecting to gcc.gnu.org|209.132.180.131|:21... connected.Logging in as anonymous ... Logged in!==> SYST ... done. ==> PWD ... done.==> TYPE I ... done. ==> CWD (1) /pub/gcc/infrastructure ... done.==> SIZE mpc-0.8.1.tar.gz ... 544950==> PASV ... done. ==> RETR mpc-0.8.1.tar.gz ... done.Length: 544950 (532K) (unauthoritative)100%[=================================================================================>] 544,950 286K/s in 1.9s2019-06-06 16:18:35 (286 KB/s) - “mpc-0.8.1.tar.gz” saved [544950]$ wget  tar zvxf isl-0.14.tar.gz$ ln -s lsl isl-0.14

在此脚本里可以看到依赖包的版本号依次是 mpc-0.8.1,mpfr-2.4.2,gmp-4.3.2;另外我们下载 isl-0.14。

3. 编译安装

为了避免在编译过程中,受原来系统自定义的一堆环境影响,建议先 unset 这些环境设置:

$ unset LIBRARY_PATH CPATH C_INCLUDE_PATH PKG_CONFIG_PATH CPLUS_INCLUDE_PATH INCLUDE

完整编译安装步骤如下:

$ mkdir gcc-build-4.8.5$ cd gcc-build-4.8.5$ unset LIBRARY_PATH CPATH C_INCLUDE_PATH PKG_CONFIG_PATH CPLUS_INCLUDE_PATH INCLUDE$ ../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib --prefix=/Bioinfo/SoftWare/gcc-4.8.5$ make $ make install.....----------------------------------------------------------------------Libraries have been installed in: /Bioinfo/SoftWare/gcc-4.8.5/lib/../lib64If you ever happen to want to link against installed librariesin a given directory, LIBDIR, you must either use libtool, andspecify the full pathname of the library, or use the `-LLIBDIR'flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,-rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf'See any operating system documentation about shared libraries formore information, such as the ld(1) and ld.so(8) manual pages.----------------------------------------------------------------------......

如果需要重新 configure 或在 make 中途出错需要退出,最好把当前目录下的所有东西都删除干净。可以执行下面指令清空 编译目录下的相关文件,包括 makefile:

$ make distclean
4. 配置环境变量

GCC 安装完成后,需要包新安装的 gcc 添加到 PATH 个人相应的 LD_LIBRARY_PATH :

export PATH=/Bioinfo/SoftWare/gcc-4.8.5/bin:$PATHexport LD_LIBRARY_PATH=/Bioinfo/SoftWare/gcc-4.8.5/lib64:$LD_LIBRARY_PATH

如果不想把新装 GCC 添加到 ~/.bashrc 中的 PATH 和 LD_LIBRARY_PATH 让它永久起作用,但是在安装软件时又想使用新安装的高级版本的 GCC 来编译软件,可以在软件编译前先执行上面两个 export 语句再执行编译安装命令;或者在软件编译安装时直接在编译参数中添加 gcc/g++ 和其动态库的路径就可以。

好啦,以上就是 Linux 下普通用户安装 GCC 的完整步骤,如果你在安装过程中有其他问题,欢迎关注 "生信私房菜" 同名微信公众号查看更多完整教程,或者在文章底下留下你宝贵的建议。

标签: #centos6安装xfce4 #centos编译安装gcc #gcc依赖包下载