在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;
    }
相关推荐
小米里的大麦7 分钟前
19 C、C++ 操作 MySQL
c语言·c++·mysql
有毒的教程19 分钟前
Dev-C++ 使用扩展库两种方式:DevPak一键安装 / 手动配置(重点)
android·c++·adb
码完就睡19 分钟前
Linux——线程的创建与同步
linux·运维
Lsetea23 分钟前
OpenSSL读取加密私钥报bad decrypt:passin与口令来源排查
linux·https·ssl证书·openssl·私钥
FY@-@24 分钟前
Shell 脚本编程:条件判断与循环
linux·运维·前端
Peregrine926 分钟前
Linux 基本指令大全
linux·运维·服务器
纪念 22928 分钟前
c++ string(二)
开发语言·c++
拂拉氏31 分钟前
【知识讲解】 Linux动静态链接认识
linux·动静态链接
sanqima35 分钟前
MFC里的线程本地存储(TLS)与模块状态(Module State)
c++·mfc·tls·module state
见叶之秋36 分钟前
【C++】从基类到派生类:关于C++继承的务实梳理
开发语言·c++