您的位置:首页 > 其它

RedHat更新GCC升级4.9.2

2015-07-15 14:04 363 查看
这半个月一直在解决PHP调用so的问题。终于在ubuntu下搞得差不多哭今天开始往服务器上移植了,结果发现服务器是redhat的某个远古版本= =郁闷 公司管服务器的人也不知所踪了 只能又开始摸着更新里面的软件 先从gcc开始咯敲打好了 先说明来意 将含有目标c算法的so按照:

①sudo cp libxxx.so /usr/local/lib路径

②sudo ldconfig


写了一个test.c后按照:

gcc -o xxxtest xxx.c -lxxx (-l为不带”lib”的动态库名称) 后报错:

好吧 暂时没有搜到什么有用的信息 考虑先把gcc升级一下,开始了:

1.下载gcc安装包

gcc各版本浏览地址 gcc下载官网, 我选择的是gcc4.9.2 ,因为之前在ubuntu下也下的这个

2.将gcc-4.9.2tar.bz2解压(放~目录里面了)

[root@localhost ]# tar -xjvfgcc4.9.2.tar.bz2


3.创建安装目录

[root@localhost]# mkdir /usr/local/gcc4.9.2


4.进入安装目录

[root@localhost]# cd /usr/local/gcc-4.9.2/


5.配置安装文件

[root@localhost gcc-4.9.2]# ~/gcc-4.9.2/configure --   prefix=/usr/local/gcc-4.9.2 (设置一个路径比较方便 接下来就明白了)

(执行源目录4.9.2中的configure命令,配置将gcc安装到目标目录/usr/local/4.9.2/下,这里–prefix选项代表要将该库安装在哪里,我是装在/usr/local/4.9.2目录下,后面的安装都会用到这个选项)


如果执行这步的时候出现了如下错误:

configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.

Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify

their locations.


错误说明要安装gcc需要GMP、MPFR、MPC这三个库,可从ftp://gcc.gnu.org/pub/gcc/infrastructure/下载相应的压缩包。由于MPFR依赖GMP,而MPC依赖GMP和MPFR,所以要先安装GMP,其次MPFR,最后才是MPC。这里三个库我用的版本分别是gmp4.3.2,mpfr2.4.2和mpc0.8.1。

①.安装gmp6.0.0

[root@localhost opt]# tar jxvf gmp-6.0.0.tar.bz2

[root@localhost opt]# mkdir /usr/local/gmp-6.0.0

[root@localhost opt]# cd /usr/local/gmp-6.0.0

[root@localhost gmp-6.0.0]# /opt/gmp-6.0.0/configure --prefix=/usr/local/gmp-6.0.0

[root@localhost gmp-6.0.0# make &make install


②安装mpfr2.4.2(新版本安装方法与此相同)

[root@localhost]# tar jxvf mpfr2.4.2.tar.bz2

[root@localhost]# mkdir /usr/local/mpfr-2.4.2

[root@localhost ]# cd /usr/local/mpfr-2.4.2

[root@localhost mpfr-2.4.2]# /opt/mpfr-2.4.2/configure --prefix=/usr/local/mpfr-2.4.2 --with-gmp=/usr/local/gmp-4.3.2(注意配置的时候要把依赖关系选项加进去)

[root@localhost mpfr-2.4.2]# make & make install


③安装mpc0.8.1

[root@localhost]# tar jxvf gmpc0.8.1.tar.bz2

[root@localhost]# mkdir /usr/local/mpc-0.8.1

[root@localhost]# cd /usr/local/mpc-0.8.1

[root@localhost mpc-0.8.1]# /opt/mpc-0.8.1/configure --prefix=/usr/local/mpc-0.8.1 --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2

[root@localhost mpc-0.8.1]# make

[root@localhost mpc-0.8.1]# make install


然后需要添加环境变量LD_LIBRARY_PATH以指出前面三个库的位置,键入以下命令(很关键,不然你make一小时候报错的心情真像草泥马):

[root@localhost gcc-4.9.2]# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-0.8.1/lib:/usr/local/gmp-4.3.2/lib:/usr/local/mpfr-2.4.2/lib


④再次安装GCC 配置安装选项

[root@localhost mpc-0.8.1]# cd /usr/local/gcc-4.9.2

[root@localhost gcc-4.9.2]# gcc-4.9.2/configure --prefix=/usr/local/gcc-4.9.2 -enable-threads=posix -disable-checking -disable-multilib -enable-languages=c,c++ --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2 --with-mpc=/usr/local/mpc-0.8.1


大概四个多小时后···(等傻了)

7.执行安装gcc make install

8.建立软链接

[root@localhost /]# sudo ln -s /usr/local/gcc-4.9.2/bin/gcc gcc49

[root@localhost /]# sudo ln -s /usr/local/gcc-4.9.2/bin/g++ g++49


9.添加环境变量

[root@localhost linfeng]# export PATH=$PATH:/usr/local/gcc-4.9.2/bin/


主要参考文章:http://blog.sina.com.cn/s/blog_493667730100zt6n.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  gcc redhat 更新