CentOS的系统比较老旧,自带的软件源更新之后软件版本依然很低,特别是GCC只是4.4版本,不能使用std=c++11等特性,不能忍。
升级软件,有种百废待兴的即视感。期间遇到很多问题,各色各样。
整个过程编译的十分辛苦,知道现在也还有遗留问题没有解决;现在暂时把收集的链接贴在之类以备忘:
'choke' undeclared
problem with GCC: http://ubuntuforums.org/archive/index.php/t-861111.html
compile gcc 4.5 on debian: http://blog.erdemagaoglu.com/post/3444247672/compiling-gcc-45-on-debian-unstable
one blog on gcc-4.7.2: http://my.oschina.net/zchking/blog/97704
ubuntu gcc: http://www.cnblogs.com/520zijuan/archive/2013/02/17/2913844.html
gcc4.7 and binutil2.22, independent toolchain: http://www.cnblogs.com/sn-dnv-aps/archive/2012/06/08/2542205.html
compile gcc4.7 on ubuntu 12.04: http://www.oschina.net/question/12_49423
install isl: http://isl.gforge.inria.fr/user.html#Changes-since-isl-0.14
gcc infrastructure: ftp://gcc.gnu.org/pub/gcc/infrastructure/
compile gcc 4.8 on centOS 6: http://blog.csdn.net/yanxiangtianji/article/details/12782839
upgrade gcc on CentOS 6: http://blog.csdn.net/yanxiangtianji/article/details/8365630
-------- another one : http://www.cnblogs.com/peterpanzsy/archive/2013/04/10/3006838.html
prerequisities for GCC: https://gcc.gnu.org/install/prerequisites.html
第一种,升级gcc,最简单的方式就是借助dev-tools:
这里没有太多要说的,内容都在这个链接里了,不要懒,点进去看看,耐心看看会有收获:http://linux.web.cern.ch/linux/devtoolset/#install
但是主要可能需要引入PGM的问题,用这个:
$sudo rpm --import http://ftp.mirrorservice.org/sites/ftp.scientificlinux.org/linux/scientific/51/i386/RPM-GPG-KEYs/RPM-GPG-KEY-cern
在stackoverflow的有详细的讨论,如有兴趣可移步这里: stackoverflow-传送门
只要你的机器有链接网络的能力,那么就可以顺利完成安装;
第二种:手动安装gcc,从gcc v4.4。7直接升级到4.9或者5.2,没成功,编译过程中反应说isl的路径除了问题,嘛蛋,找了半天确认isl没有问题啊。。。。不晓得为什么
于是就老老实实的安装gcc 4.7开始安装升级,嘘嘘一下先。。
gcc
手动从软件包开始gmp, mpfr, mpc安装gcc (4.9.0/5.2.0),遇到的问题就是isl找不到;包括lib和include,郁闷;
openblas
atlas
slurm
./configure --disable-pam; make; make install
(在slumr的contrib第三方库代码中库携带了pmi,因此安装它也就顺带安装了pmi, 库默认都是安装在/usr/local/lib下)
openmpi
./configure --prefix=/home/disk1/work/openmpi --with-cuda --with-hwloc=internal --with-pmi=/usr/local --with-pmi-libdir=/usr/local/lib --with-slurm
这里目标是想安装zeromq,但是其依赖于libsodium,本想通过--without-libsodium来绕过去,但是还是担心在后续的使用当中出现问题;
因此又是回过头来安装安装libsodium;但是在下载tar包安装后,config zeromq时依然报错找不到libsodium,没有搞定,哪位大神知道原因
的话烦请指出;我采用的方式是去安装更多的依赖库:
https://github.com/zeromq/libcurve
libsodium
zeromq --without-libsodium