RedHat更新GCC升级4.9.2
2015-07-15 14:04
363 查看
这半个月一直在解决PHP调用so的问题。终于在ubuntu下搞得差不多哭今天开始往服务器上移植了,结果发现服务器是redhat的某个远古版本= =郁闷 公司管服务器的人也不知所踪了 只能又开始摸着更新里面的软件 先从gcc开始咯敲打好了 先说明来意 将含有目标c算法的so按照:
写了一个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解压(放~目录里面了)
3.创建安装目录
4.进入安装目录
5.配置安装文件
如果执行这步的时候出现了如下错误:
错误说明要安装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
②安装mpfr2.4.2(新版本安装方法与此相同)
③安装mpc0.8.1
然后需要添加环境变量LD_LIBRARY_PATH以指出前面三个库的位置,键入以下命令(很关键,不然你make一小时候报错的心情真像草泥马):
④再次安装GCC 配置安装选项
大概四个多小时后···(等傻了)
7.执行安装gcc make install
8.建立软链接
9.添加环境变量
主要参考文章:http://blog.sina.com.cn/s/blog_493667730100zt6n.html
①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
相关文章推荐
- 基于 Red Hat 的发行版 Oracle Linux 正式发布Oracle Linux 7.1
- 在Windows平台下使用安装GCC(图)
- 基于 Red Hat 的发行版 Oracle Linux 正式发布Oracle Linux 7.1
- 初级:如何在终端及图形界面中更新 Ubuntu
- 图解RedHat AS4.0硬盘版安装教程
- 必须会的SQL语句(四) 数据删除和更新
- bat+xcopy实现只复制比目标文件更新的文件
- 使用 TOP 子句限制UPDATE 语句更新的数据
- 与MSSQL对比学习MYSQL的心得(八)--插入 更新 删除
- 在RedHat下安装apache jserv 1.1.2方法
- php使用COPY函数更新配置文件的方法
- C#在子线程中更新窗口部件的写法
- linux使用gcc编译c语言共享库步骤
- Shell脚本中实现更新PHP5
- redhat下apache+php+mysql+imap+ldap+jdk+tomcat的安装
- Android实现检查并下载APK更新、安装APK及获取网络信息的方法
- redhat Server release 5.2 安装配置简明教程
- Redhat Linux下Bind的快速安装