gcc 版本下载地址和编译依赖库

一丶 源码安装  自己安装报错 ,用了yum安装

下载地址,根据需求下载对应版本

http://www.netgull.com/gcc/releases 


依赖检测并下载

./contrib/download_prerequisites  


编译安装

./configure --enable-languages=c,c++ --enable-checking=release  -disable-multilib  #仅安装64位

make 

make install


二、yum 安装高版本

There is a package for gcc-5.2.1, if that's close enough. First you need to enable the Software Collections, then it's available in devtoolset-4:

wget http://people.centos.org/tru/devtools-2/devtools-2.repo -P /etc/yum.repos.d

sudo yum install centos-release-scl
sudo yum install devtoolset-4-gcc*
scl enable devtoolset-4 bash
which gcc
gcc --version

CXX=/opt/rh/devtoolset-4/root/usr/bin/gcc ./install.py  调用指定 的GCC



下面是编译错误才看的

make: Nothing to be done for `all' 解决方法

1.这句提示是说明你已经编译好了,而且没有对代码进行任何改动。

若想重新编译,可以先删除以前编译产生的目标文件:
make clean
然后再
make
 

2.出现这种情况解决方法:


a.make clean 清除安装时留下的文件

b.在运行一下ldconfig
c.再make 可运行出结果


svn checkout svn://gcc.gnu.org/svn/gcc/trunk拿了GCC的最新代码,打算编译了学东西习学习C++ 11的东西,结果在configure的时候出现如下问题:
Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+
http://www.multiprecision.org/mpc 下载mpc-0.9.tar.gz 
ftp://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2下载gmp-5.0.1.tar.bz2


      http://ftp.gnu.org/gnu/mpfr/下载mpfr-3.1.0.tar.xz。
先开始安装GMP。解压GMP的压缩包后,得到源代码目录gmp-5.0.1。在该目录的同级目录下建立一个临时的编译目录,这里命名为temp。然后开始配置安装选项,进入temp目录,输入以下命令进行配置:

  ../gmp-5.0.1/configure --prefix=/usr/local/gmp-5.0.1

make

sudo make install

mpfr和mpc的安装方法与gmp类似。不过要注意配置的时候要把gmp与mpfr的依赖关系选项加进去,具体配置命令如下:

  ../mpfr-3.1.0/configure --prefix=/usr/local/mpfr-3.1.0 --with-gmp=/usr/local/gmp-5.0.1

  ../mpc-0.9/configure --prefix=/usr/local/mpc-0.9 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0

  安装好这三个库之后,就可以正式开始安装gcc了。 

当然了链接的时候,需要刚刚编译的3个lib。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-0.9/lib:/usr/local/gmp-5.0.1/lib:/usr/local/mpfr-3.1.0/lib 


#####这种方法在重启终端后失效,所以直接将他写入/etc/profile比较好

-------------------------------------------------------------------

或者:

安装三个依赖库完毕之后记住一定要把库路径添加到 /etc/ld.so.conf文件中
vi /etc/ld.so.conf
添加
/usr/local/gcc/gmp-4.3.2/lib
/usr/local/gcc/mpfr-2.4.2/lib
/usr/local/gcc/mpc-0.8.1/lib

添加路径完之后一定要执行
ldconfig
让新添加的路径进入动态链接库cache
参见:http://blog.csdn.net/u010445083/article/details/9298399

      http://kmoving.blog.163.com/blog/static/205049197201267113438532/

-------------------------------------------------------------------

然后是典型的configure,make,install三步曲。

../trunk/configure --prefix=/usr/local/gcc-4.7 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++
  --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0 --with-mpc=/usr/local/mpc-0.9

make

make check(可选)

sudo make install

经过漫长的等待:

/usr/local/gcc-4.7/bin/g++ -v
使用内建 specs。
COLLECT_GCC=/usr/local/gcc-4.7/bin/g++
COLLECT_LTO_WRAPPER=/usr/local/gcc-4.7/libexec/gcc/x86_64-unknown-Linux-gnu/4.7.0/lto-wrapper
目标:x86_64-unknown-linux-gnu
配置为:../trunk/configure --prefix=/usr/local/gcc-4.7 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0 --with-mpc=/usr/local/mpc-0.9
线程模型:posix
gcc 版本 4.7.0 20120113 (experimental) (GCC)


---------------------------------------------------------------------------------------------------------------------------

GMP:                  http://down.admin5.com/edu_program/c/71472.html

GNU MP 是用C 语言写成的一个便携式库,它可以进行整数、有理数和浮点数的任意精度算术,其目标是为所有需要不能由基本C 类型直接支持的多精度类型的应用提供可能最快的算术。

MPFR:               http://www.holoborodko.com/pavel/mpfr/#intro

MPFR library allows user to conduct floating-point calculations with virtually any (restricted by available memory only) precision with correct rounding.

MPC:


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值