温馨提示×

ubuntu编译c++为何报错

小樊
48
2026-09-14 12:52:24
栏目: 编程语言

在 Ubuntu 上编译 C++ 报错的原因非常多,需要先看你具体的报错信息才能准确判断。不过我可以先给你最常见的几类原因 + 解决办法,你对照一下。


一、最常见原因汇总

1️⃣ 没安装 g++(最常见)

报错示例

g++: command not found

解决

sudo apt update
sudo apt install g++ build-essential

2️⃣ 命令用错(gcc 编 C++)

报错示例

undefined reference to `std::cout`

解决

  • C++ 要用 g++,不要用 gcc
g++ main.cpp -o main

3️⃣ 头文件找不到

报错示例

fatal error: iostream: No such file or directory

原因

  • 没装 C++ 标准库
  • 或用了 gcc 编译 C++

解决

sudo apt install g++ build-essential

4️⃣ 链接错误(undefined reference)

报错示例

undefined reference to `func()`

原因

  • 源文件没一起编译
  • 或忘了链接库

解决示例

g++ main.cpp func.cpp -o main

5️⃣ C++ 标准版本太低

报错示例

error: ‘nullptr’ was not declared

解决

g++ main.cpp -std=c++11 -o main

推荐:

-std=c++17

6️⃣ 权限问题

报错示例

Permission denied

解决

chmod +x main
./main

7️⃣ Makefile / CMake 配置错误

常见于:

  • CMake 没指定 C++ 标准
  • 没 add_executable

二、你可以这样贴信息(我直接帮你定位)

请把下面信息发我:

  1. 完整报错信息(复制终端)
  2. 你用的编译命令
  3. 示例源码(哪怕几行)
  4. Ubuntu 版本(可运行):
lsb_release -a

如果你愿意,可以直接把报错截图或文字贴出来,我可以一行一行帮你分析。

0 踩