0

0

linux如何安装GCC编译器_Linux配置C++开发工具链【指南】

尼克

尼克

发布时间:2026-03-02 13:47:03

|

755人浏览过

|

来源于php中文网

原创

需安装gcc编译器套件,ubuntu/debian用sudo apt install build-essential,rhel/centos/fedora用sudo dnf/yum groupinstall "development tools",或源码编译并配置path。

linux如何安装gcc编译器_linux配置c++开发工具链【指南】

如果您在Linux系统中尝试编译C++程序,但提示“g++: command not found”或“gcc: command not found”,则说明系统未安装GCC编译器套件。以下是安装GCC及配置C++开发工具链的具体步骤:

一、使用系统包管理器安装GCC

大多数主流Linux发行版均通过默认包管理器提供GCC套件,该方法最稳定且与系统兼容性最佳。

1、对于基于Debian/Ubuntu的系统,执行以下命令更新软件源并安装build-essential(含gcc、g++、make等):

2、sudo apt update && sudo apt install build-essential

立即学习C++免费学习笔记(深入)”;

3、对于基于RHEL/CentOS 8+或Fedora的系统,使用dnf安装开发工具组:

4、sudo dnf groupinstall "Development Tools"

5、对于CentOS 7或RHEL 7,使用yum安装:

6、sudo yum groupinstall "Development Tools"

二、从源码编译安装GCC

当系统预装版本过旧,或需特定版本(如GCC 13)、启用非默认特性(如Graphite循环优化)时,可手动编译安装。

1、安装编译依赖:确保已安装gawk、bison、flex、gettext、texinfo、libmpc-devel、libisl-devel、libmpfr-devel、zlib-devel等基础构建工具和库。

2、sudo apt install gawk bison flex texinfo zlib1g-dev libmpc-dev libmpfr-dev libisl-dev(Ubuntu/Debian)

3、下载GCC源码包(例如gcc-13.2.0.tar.xz)至本地目录,并解压:

4、tar -xf gcc-13.2.0.tar.xz && cd gcc-13.2.0

5、运行contrib/download_prerequisites脚本自动获取GMP、MPFR、MPC、ISL依赖源码:

6、./contrib/download_prerequisites

7、新建构建目录,进入后执行configure,指定安装路径(如/opt/gcc-13.2)和启用C++支持:

VisualizeAI
VisualizeAI

用AI把你的想法变成现实

下载

8、mkdir build && cd build && ../configure --prefix=/opt/gcc-13.2 --enable-languages=c,c++ --disable-multilib

9、执行make -j$(nproc)进行并行编译,完成后安装:

10、make -j$(nproc) && sudo make install

三、配置环境变量使新GCC生效

若安装路径不在系统默认PATH中(如/opt/gcc-13.2/bin),需显式添加至环境变量,否则shell无法识别gcc/g++命令。

1、编辑用户级Shell配置文件(如~/.bashrc或~/.zshrc):

2、echo 'export PATH="/opt/gcc-13.2/bin:$PATH"' >> ~/.bashrc

3、重新加载配置:

4、source ~/.bashrc

5、验证安装结果:

6、gcc --version && g++ --version

四、验证C++标准库与头文件完整性

GCC安装后,C++标准库(libstdc++)及其头文件(如)必须可用,否则编译将因“no such file or directory”失败。

1、检查头文件是否存在:

2、ls /usr/include/c++/*/vector /usr/include/c++/*/iostream 2>/dev/null || echo "C++ headers missing"

3、检查动态链接库路径是否包含libstdc++.so:

4、ldconfig -p | grep stdc++

5、编写测试文件test.cpp,内容为#include int main(){std::cout

6、使用g++编译并运行:

7、g++ test.cpp -o test && ./test

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
c语言中null和NULL的区别
c语言中null和NULL的区别

c语言中null和NULL的区别是:null是C语言中的一个宏定义,通常用来表示一个空指针,可以用于初始化指针变量,或者在条件语句中判断指针是否为空;NULL是C语言中的一个预定义常量,通常用来表示一个空值,用于表示一个空的指针、空的指针数组或者空的结构体指针。

249

2023.09.22

java中null的用法
java中null的用法

在Java中,null表示一个引用类型的变量不指向任何对象。可以将null赋值给任何引用类型的变量,包括类、接口、数组、字符串等。想了解更多null的相关内容,可以阅读本专题下面的文章。

967

2024.03.01

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

910

2023.08.02

int占多少字节
int占多少字节

int占4个字节,意味着一个int变量可以存储范围在-2,147,483,648到2,147,483,647之间的整数值,在某些情况下也可能是2个字节或8个字节,int是一种常用的数据类型,用于表示整数,需要根据具体情况选择合适的数据类型,以确保程序的正确性和性能。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

595

2024.08.29

c++怎么把double转成int
c++怎么把double转成int

本专题整合了 c++ double相关教程,阅读专题下面的文章了解更多详细内容。

294

2025.08.29

C++中int的含义
C++中int的含义

本专题整合了C++中int相关内容,阅读专题下面的文章了解更多详细内容。

210

2025.08.29

flex教程
flex教程

php中文网为大家带来了flex教程合集,Flex是采用Flex布局的元素,称为Flex容器(flex container),简称"容器",它的所有子元素自动成为容器成员,有三个核心概念: flex项,需要布局的元素;flex容器,其包含flex项;排列方向,这决定了flex项的布局方向。php中文网还为大家带来flex的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

368

2023.06.14

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1542

2023.06.21

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

43

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10万人学习

Git 教程
Git 教程

共21课时 | 3.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号