CentOS6上编译安装gcc8.1版本全过程记录(包括排坑与常见错误解决)

本文详细记录了在CentOS 6上升级gcc8.1的过程,包括安装依赖、下载源码、编译、创建软链接及解决升级后遇到的C库版本不匹配、字符串格式非法、类型转换警告、链接错误和ldconfig报错等常见问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前发现开发机上安装的gcc版本太旧了,连C++11新特性都不支持,于是决定对其进行升级。本文详细记录了在CentOS 6上升级gcc的整个过程,特别是其中遇到的坑和解决办法。

安装依赖项

先把依赖项装好

sudo yum install glibc-devel bison flex texinfo build-essential

在安装的过程中就会发现翻车了:

$ ll
relocation error: /usr/lib64/libc.so.6: symbol _dl_starting_up, version GLIBC_PRIVATE not defined in file ld-linux-x86-64.so.2 with link time reference

这时会发现几乎所有常见命令都无法执行了——因为他们都依赖C库,而现在C库处于gg状态。解决方案也很简单,两条指令就能搞定。想比于已经启动不了的ln,sln真是雪中送炭啊!

LD_PRELOAD="/lib64/libc-2.12.so"
sudo sln /lib64/libc-2.12.so /lib64/libc.so.6

下载源码

wget http://ftp.gnu.org/gnu/gcc/gcc-8.1.0/gcc-8.1.0.tar.xz
tar -xf ./gcc-8.1.0.tar.xz
cd ./contrib/
./download_prerequisites
cd ..

如果目标机网络不好,则需要下载gcc源码到本地,并且将./contrib/download_prerequisites中需要的4个依赖库源码下载好,然后手动上传、解压并设置链接。

tar -xf ./isl-0.18.tar.bz2 
tar -xf ./mpc-1.0.3.tar.gz 
tar -xf ./mpfr-3.1.4.tar.bz2 
tar -x
CentOS 8.1安装VMware Tools可以让虚拟机获得更好的性能及更多的功能支持。以下是具体的步骤: ### 步骤一:准备环境 首先确认你的系统已经更新到最新状态。 ```bash sudo dnf update -y && sudo reboot ``` 等待机器重启完成后继续下面的操作。 确保内核头文件以及编译工具链已就绪,因为后续安装过程可能会需要它们。 ```bash sudo dnf install -y kernel-devel gcc make perl ``` 如果你正在运行的是一个较新的内核版本,则还需要同步安装对应的开发包: ```bash sudo dnf install "kernel-devel-uname-r == $(uname -r)" ``` 接着关闭防火墙服务以免对接下来的过程造成干扰(非必要)。 ```bash sudo systemctl stop firewalld ``` 最后加载必要的模块: ```bash sudo modprobe vmw_balloon ``` ### 步骤二:挂载ISO并解压内容至临时目录 一般情况下,在 VMware 菜单栏选择`虚拟机 -> 安装 VMware 工具...`, 这将自动创建一个包含所需软件包的 CD-ROM 镜像,并将其连接到您的 CentOS 系统。 然后我们可以在终端里检查一下是否有新设备被识别出来, ```bash ls /dev/cdrom ``` 如果存在 `/dev/cdrom` ,那么就可以直接开始下一步了;若不存在则请再次尝试通过 GUI 启动 ISO 映像加载流程. 假设一切正常,现在可以去创建一个新的挂载点并将光盘映射过去, ```bash mkdir -p ~/vmtools_cd mount /dev/cdrom ~/vmtools_cd/ ``` 进入该路径查看里面的内容是否正确无误, ```bash cd ~/vmtools_cd ls ``` 你应该能看到类似如下的结果, ``` manifest.txt VM-install.sh vmhgfs-fuse vmxnet3.tar.gz VMwareTools-*.tar.gz vmci.tar.gz vmmemctl.tar.gz ... ``` 此时说明一切都OK! ### 步骤三:实际执行安装命令 将压缩后的归档拷贝下来之后再解开它, ```bash cp VMwareTools-*.tar.gz ~/ cd ~ tar zxvf VMwareTools-*.tar.gz ``` 转跳入刚刚生成的那个文件夹, 执行默认脚本来进行整个部署操作 (期间会有一些提示信息让你交互式地输入选项), ```bash cd vmware-tools-distrib/ ./vmware-install.pl ``` 根据屏幕上的指示完成配置即可; 对于大多数设置而言保留其缺省值通常是安全的选择. ### 步骤四:清理残留物 一旦成功结束上述所有环节,别忘了清除不再需要的东西以节省磁盘空间。 ```bash umount ~/vmtools_cd # 卸下CD镜像 rm -rf ~/vmtools_cd/* ~/vmware-tools-distrib* ``` 最后重启计算机使得改动生效, ```bash reboot now ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值