编译gcc报错make[3]: Leaving directory `/usr/local/src/gcc-7.4.0/build/gcc' make[2]: *** [all-stage1-gcc] Error 2 处理

因业务需要安装7.4高版本gcc时报错:

 configure: error: in `/usr/local/src/gcc-7.4.0/build/gcc':

configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.

 make[3]: Leaving directory `/usr/local/src/gcc-7.4.0/build/gcc'

make[2]: *** [all-stage1-gcc] Error 2
make[2]: Leaving directory `/usr/local/src/gcc-7.4.0/build'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/usr/local/src/gcc-7.4.0/build'
make: *** [all] Error 2

 解决:

yum install -y glibc-headers gcc-c++ #参考链接https://www.cnblogs.com/niocai/archive/2011/11/04/2236458.html

知识点扩展:

在网上寻找解决方案时碰到一些人说是因内存不足需要添加swap分区来解决,未实际验证,这里给出添加swap分区的方法

添加命令

SWAP=/tmp/swap

dd if=/dev/zero of=$SWAP bs=1M count=500 #500为swap分区大小

mkswap $SWAP

swapon $SWAP #启用swap

当发现swap分区不够用,想继续加大时,需要先关闭正在使用的swap分区,然后重新分配

swapoff /tmp/swap 或者swapoff -a这两个命令均可关闭swap分区

注意:如果不关闭现有swap分区但想继续扩容swap分区时,当执行dd命令时会报如下错:

dd: failed to open ‘/tmp/swap’: Text file busy

另外根据需要可以将swap写入/etc/fstab使其永久生效

/tmp/swap swap swap defaults 0 0

posted @ 2019-02-27 15:56  godfather007  阅读(12276)  评论(0编辑  收藏  举报