在 Ubuntu 下编译 C++ 程序,通常有以下几种常见方式。下面从最基础到常用工具一步步说明。
一般 Ubuntu 自带 g++,如果没有:
sudo apt update
sudo apt install g++ build-essential
比如 hello.cpp:
#include <iostream>
using namespace std;
int main() {
cout << "Hello Ubuntu!" << endl;
return 0;
}
g++ hello.cpp -o hello
hello.cpp:源文件-o hello:指定生成的可执行文件名./hello
输出:
Hello Ubuntu!
g++ -std=c++17 hello.cpp -o hello -Wall -O2
说明:
-std=c++17:使用 C++17 标准(可选 11 / 14 / 20)-Wall:显示所有警告-O2:开启优化假设有:
main.cpp
func.cpp
func.h
编译方式:
g++ main.cpp func.cpp -o app
或者分步编译:
g++ -c main.cpp
g++ -c func.cpp
g++ main.o func.o -o app
sudo apt install cmake
project/
├── CMakeLists.txt
└── main.cpp
cmake_minimum_required(VERSION 3.10)
project(demo)
set(CMAKE_CXX_STANDARD 17)
add_executable(demo main.cpp)
mkdir build
cd build
cmake ..
make
运行:
./demo
示例 Makefile:
hello: hello.cpp
g++ hello.cpp -o hello
clean:
rm -f hello
使用:
make
./hello
make clean
g++: command not found → 没装编译器Permission denied → 忘了 ./-I 路径如果你愿意,可以告诉我:
我可以直接给你最合适的编译方式。