华为云国际站企业账号 华为云ECS安装GCC编译器
为什么需要GCC?别让它当摆设
GCC全称GNU Compiler Collection,可不是什么游戏外挂,而是编程界的万能工具。没有它,你写的代码只能躺在硬盘里当“古董”。无论是写个小脚本,还是搞个大型项目,GCC都是必备的。就像做菜没锅一样,再好的食材也做不出美味。华为云ECS作为云服务器,可能默认没装GCC,或者版本老旧,这时候就得动手装一个。
记得上次有个朋友,想用最新C++特性,结果gcc版本太低,编译报错,急得直跺脚。所以,装个合适的GCC,能省去不少麻烦。别等到项目卡壳了才想起来装,那可就晚了!
准备工作:先摸清家底
检查系统版本
装GCC前,得先知道你用的是啥系统。打开终端,敲个命令:
cat /etc/os-release
看看输出,是CentOS、Ubuntu还是其他。比如:
NAME="CentOS Linux"
VERSION="7 (Core)"
或者
NAME="Ubuntu"
VERSION="20.04.3 LTS (Focal Fossa)"
不同系统安装方式不同,这步不能跳。就像买衣服得先量尺寸,不然买错就尴尬了。
权限准备:别当“无权党”
安装软件一般需要管理员权限。如果你用的是普通用户,记得加上sudo。比如:
sudo yum install gcc 或 sudo apt install gcc
如果遇到“xxx is not in the sudoers file”的提示,说明你还没配置sudo权限。这时候可以切换到root用户(su root),或者联系管理员帮忙。记住,权限不够,寸步难行,所以先确认自己是“有权限的人”。
安装GCC:分系统操作
CentOS系统安装指南
对于CentOS用户,安装GCC其实很简单。先更新系统,再装开发工具包:
sudo yum update
sudo yum groupinstall "Development Tools"
或者直接安装gcc:
sudo yum install gcc
如果想安装更高版本的GCC(比如8.x或9.x),可以用SCL(Software Collections)库。先安装SCL仓库:
sudo yum install centos-release-scl
sudo yum install devtoolset-9-gcc*
然后启用:
scl enable devtoolset-9 bash
这时候输入gcc --version,应该能看到新版本了。是不是很简单?
Ubuntu系统安装指南
Ubuntu的安装方式稍微不同。先更新软件源:
sudo apt update
sudo apt install build-essential
build-essential会自动安装gcc、g++、make等必备工具。安装完成后,检查版本:
gcc --version
如果看到类似gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0,说明成功了!
验证安装:用Hello World测试
装好了GCC,得确认它能工作。别信“装好了”,得实际跑一下。新建一个hello.c文件:
华为云国际站企业账号 echo '#include
然后编译:
gcc hello.c -o hello
运行:
./hello
如果终端输出“Hello, GCC!”,说明大功告成!这时候可以拍个照发朋友圈,庆祝一下。如果报错?别慌,可能路径不对或者权限问题,检查一下文件权限(chmod +x hello)。
常见问题及解决方案
华为云国际站企业账号 问题1:安装提示“没有可用的包”
这种情况可能是因为系统源没配置好。比如CentOS可能需要先安装epel-release:
sudo yum install epel-release
再尝试安装。或者Ubuntu的源没更新,跑个sudo apt update试试。
问题2:GCC版本太低
系统默认的gcc可能比较老。比如CentOS 7默认是4.8.5,想用C++17?必须升级。可以用SCL安装高版本,或者手动编译。不过手动编译有点麻烦,新手建议用SCL。Ubuntu的话可以加PPA源安装高版本,但操作稍复杂,新手建议用SCL。
问题3:缺少依赖库
有时候安装过程中会提示缺少libstdc++-devel或者glibc-devel。这时候需要单独安装:
CentOS: sudo yum install glibc-devel
Ubuntu: sudo apt install libc6-dev
这些依赖库是编译过程必须的,没有它们,GCC再牛也装不上。
小贴士:安装后的注意事项
装完GCC后,记得定期更新系统,保持版本最新。另外,如果多个版本共存,可以用update-alternatives切换默认版本。不过对于新手,建议先用一个稳定版本,别搞太复杂。
最后,如果遇到问题,别急着百度,先看错误信息。比如“undefined reference to `main'”说明源文件没main函数,或者编译时没指定文件。细心点,问题总能解决。
现在,你已经可以在华为云ECS上愉快地编译代码了!下次再有人问你“GCC怎么装”,你就笑着甩出这篇文章,稳!

