在Ubuntu 22.04上安装C++编译工具

[1 在Ubuntu 22.04上安装C++编译工具](#1 在Ubuntu 22.04上安装C++编译工具)
[2 在ubuntu中运行c++代码](#2 在ubuntu中运行c++代码)

1 在Ubuntu 22.04上安装C++编译工具

核心是安装build-essential包(包含gcc、g++、make等基础编译工具),步骤如下:

安装步骤

  1. 更新软件源列表

    先同步最新的软件包信息:

    bash 复制代码
    sudo apt update
  2. 安装C++编译工具包

    执行以下命令安装build-essential(包含g++编译器):

    bash 复制代码
    sudo apt install -y build-essential
  3. 验证安装

    检查g++版本,确认安装成功:

    bash 复制代码
    g++ --version

    输出类似g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0即表示安装完成。

补充说明

  • build-essential是Ubuntu下的"基础编译工具集",除了g++,还包含C编译器(gcc)、Make工具等,满足绝大多数C/C++项目的编译需求。
  • 若需要更新版本的编译器,可通过第三方源(如ppa:ubuntu-toolchain-r/test)安装,但默认版本已能覆盖常规开发场景。

2 在ubuntu中运行c++代码

以下是一个极简且易验证的C++测试代码,能快速验证编译工具是否安装成功,步骤包含编写代码→编译→执行全流程:

第一步:编写C++测试代码

创建一个名为 test.cpp 的文件(可通过vim/nano/文本编辑器编写):

cpp 复制代码
// test.cpp - 验证C++编译环境的测试代码
#include <iostream>  // 引入输入输出头文件
using namespace std;

int main() {
    // 输出系统信息+验证语句
    cout << "=====================================" << endl;
    cout << "C++编译环境验证成功!" << endl;
    cout << "当前g++版本:" << __GNUC__ << "." << __GNUC_MINOR__ << "." << __GNUC_PATCHLEVEL__ << endl;
    cout << "系统架构:" << __x86_64__ ? "x86_64 (64位)" : "32位" << endl;
    cout << "=====================================" << endl;
    return 0;
}

第二步:编译代码

在终端执行编译命令(将test.cpp编译为可执行文件test):

bash 复制代码
g++ test.cpp -o test
  • 若编译无报错,说明g++编译器正常工作;
  • 若报错(如command not found),则需重新检查build-essential安装。

第三步:执行可执行文件

运行编译后的程序:

bash 复制代码
./test

预期输出(验证成功)

复制代码
=====================================
C++编译环境验证成功!
当前g++版本:11.4.0
系统架构:x86_64 (64位)
=====================================

补充说明

  1. 若输出上述内容,证明:

    • g++编译器已正确安装;
    • C++标准库(iostream)可正常引用;
    • 编译→链接→执行全流程无问题。
  2. 若编译时报undefined reference to '__x86_64__'(极少数情况),可简化代码为:

    cpp 复制代码
    #include <iostream>
    using namespace std;
    int main() {
        cout << "C++编译环境验证成功!" << endl;
        return 0;
    }
相关推荐
C++ 老炮儿的技术栈10 分钟前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt
橘颂TA17 分钟前
【笔试】算法的暴力美学——牛客 NC213140 :除2!
c++·算法·结构与算法
爱莉希雅&&&1 小时前
linux中MySQL数据库备份恢复的四种方法(更新中)
linux·数据库·mysql·数据库备份·mysqldumper
wsoz1 小时前
Leetcode普通数组-day5、6
c++·算法·leetcode·数组
favour_you___1 小时前
2026_4_8算法练习题
数据结构·c++·算法
藤谷性能1 小时前
Ubuntu 22.04:安装SEGGER Embedded Studio
ubuntu·nrf52832·ses·embedded studio
coppher1 小时前
Ubuntu 22.04 amd64 离线安装 Docker 完整教程
linux·docker
xyz5991 小时前
如何在 WSL 中删除指定版本的 Ubuntu 以及安装
linux·运维·ubuntu
SccTsAxR1 小时前
算法基石:手撕离散化、递归与分治
c++·经验分享·笔记·算法
Q741_1472 小时前
每日一题 力扣 3655. 区间乘法查询后的异或 II 模拟 分治 乘法差分法 快速幂 C++ 题解
c++·算法·leetcode·模拟·快速幂·分治·差分法