【Linux】-NO.86.Linux.6.C.1.001-【CentOS 7 Install GCC】-
1.0.0 Summary
Tittle:【Linux】-NO.86.Linux.6.C.1.001-【CentOS 7 Install GCC】-
Style:Java
Series:Log4j
Since:2017-04-24
End:2017-05-07
Total Hours:30+
Degree Of Diffculty:5
Degree Of Mastery:5
Practical Level:5
Desired Goal:5
Archieve Goal:3
Gerneral Evaluation:3
Writer:kingdelee
Related Links:
http://www.cnblogs.com/kingdelee/
http://blog.csdn.net/hanzheng260561728/article/details/75125891
http://www.linuxidc.com/Linux/2017-12/149506.htm
https://www.cnblogs.com/davygeek/p/8018628.html
http://www.linuxidc.com/Linux/2017-12/149506.htm
http://www.codeweblog.com/%E7%AC%94%E8%AE%B0-centos%E4%B8%8A%E6%BA%90%E7%A0%81%E5%AE%89%E8%A3%85gcc-4-8-2/
1.Question
tar (child): lbzip2: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
2.Dispose
yum -y install bzip2
If have no web:
tar zxvf bzip2-1.0.6.tar.gz
cd bzip2-1.0.6/
#为编译做准备,创建libbz2.so动态链接库(这一步很重要,安装python的时候如果没有这一步,python安装不上bz2模块):
make -f Makefile-libbz2_so
make && make install
3. GCC安装报错,需要以下几个组件
https://gcc.gnu.org/gcc-7/
http://mirrors.concertpass.com/gcc/releases/gcc-7.3.0/
configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.
Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
their locations. Source code for these libraries can be found at
their respective hosting sites as well as at
ftp://gcc.gnu.org/pub/gcc/infrastructure/. See also
http://gcc.gnu.org/install/prerequisites.html for additional info. If
you obtained GMP, MPFR and/or MPC from a vendor distribution package,
make sure that you have installed both the libraries and the header
files. They may be located in separate packages.
3.1 安装 GMP
https://gmplib.org/
https://gmplib.org/download/gmp/gmp-6.1.2.tar.lz
因为上面是lz的,所以还要下载安装lz解压工具 http://ftp.yzu.edu.tw/nongnu/lzip/lzip-1.19.tar.gz 然后安装(下同) ./configure make make install
安装gmp:
./configure 报 m4未安装:
checking for suitable m4... configure: error: No usable m4 in $PATH or /usr/5bin (see config.log for reasons). 解决 安装m4:
http://ftp.gnu.org/gnu/m4/
http://ftp.gnu.org/gnu/m4/m4-1.4.18.tar.gz 对m4
./configure
make
make install 对 gmp:
./configure
终于成功,继续 make;
make install
3.2 安装 MPFR
http://www.mpfr.org/mpfr-current/#download
http://www.mpfr.org/mpfr-current/mpfr-4.0.0.tar.gz
安装(cmm下同: ./configure;make;make install)
3.3 安装 MPC
http://ftp.gnu.org/gnu/mpc/
http://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz
cmm
3.3 安装 isl
checking for isl 0.15 or later... no
required isl version is 0.15 or later
The following languages will be built: c,c++,fortran,lto,objc
*** This configuration is not supported in the following subdirectories:
gnattools gotools target-libada target-libhsail-rt target-libgo target-libffi target-liboffloadmic
(Any other directories should still work fine.)
checking for default BUILD_CONFIG... bootstrap-debug
checking for --enable-vtable-verify... no
/usr/bin/ld: cannot find crt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: cannot find -lc
/usr/bin/ld: cannot find crtn.o: No such file or directory
collect2: error: ld returned 1 exit status
configure: error: I suspect your system does not have 32-bit development libraries (libc and headers). If you have them, rerun configure with --enable-multilib. If you do not have them, and want to build a 64-bit-only compiler, rerun configure with --disable-multilib.
ftp://gcc.gnu.org/pub/gcc/infrastructure/
ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.18.tar.bz2
tar -xjf isl-0.18.tar.bz2
CMM
4.重回安装 GCC
在/home/lee/download/gcc-7.3.0新建一个build,在此目录下执行:
../configure --prefix=/usr/local/gcc-7.3.0 --enable-checking=release --enable-languages=c,c++,go --disable-multilib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
make 4j
make install
期间耗时1个多小时+
5.配置
vim /etc/profile
source /etc/profile
6.
配置libstdc++.so.6
在 build
文件夹里找到 libstdc++.so.*
:
find . -name "libstdc++.so.*" | xargs ls -al
复制到 /usr/lib64
目录下:
sudo cp libstdc++.so.6.0.20 /usr/lib64
sudo ldconfig
[root@hadoop1 bin]# find / -name gcc
/home/lee/download/gcc-7.3.0/gcc
/home/lee/download/gcc-7.3.0/build/gcc
/usr/bin/gcc
/usr/lib/gcc
/usr/libexec/gcc
/usr/local/gcc-7.3.0/libexec/gcc
/usr/local/gcc-7.3.0/lib/gcc
/usr/local/gcc-7.3.0/bin/gcc
/usr/bin
mv gcc gcc.bak
mv g++ g++.bak
ln -s /usr/local/gcc-7.3.0/bin/gcc gcc
ln -s /usr/local/gcc-7.3.0/bin/g++ g++
gcc --version
g++ -version
最新文章
- 洛谷P1196 银河英雄传说[带权并查集]
- iOS 全局断点崩溃
- [C#解惑] #2 对象的初始化顺序
- [NOIP2014] 普及组
- linux下mysql定时备份数据库
- Python本地化例子 - gettext 模块
- 07_MyBatis原始的Dao编写方法
- [转]JavaScript函数和数组总结
- 利用Telnet来模拟Http请求 有GET和POST两种
- HTML5 Canvas中实现绘制一个像素宽的细线
- java中的传值
- web从入门开始(2)----基础
- Office办公软件(Excel PPT Word)使用整理
- JavaScript获取屏幕和页面的宽度和高度
- Linux查看当前正在运行的进程
- jmeter学习记录--05--Beanshell2
- 懒得说IE6了,写个js插件不能写注释,原因如下
- 使用GAN 进行异常检测——anoGAN,TODO,待用于安全分析实验
- Could not load file or assembly 'Microsoft.Practices.EnterpriseLibrary.Common, Version=5.0.414.0, ...
- Vue组件通讯