在 Ubuntu 下进行 C++ 开发/配置,通常需要注意以下几方面(从“环境准备”到“常见坑”):
Ubuntu 默认可能没有完整 C++ 环境:
sudo apt update
sudo apt install build-essential
包含:
g++ / gccmake检查版本:
g++ --version
Ubuntu 旧版自带的 g++ 可能较老:
sudo apt install g++-11 g++-12
使用:
g++-12 main.cpp -std=c++20
sudo apt install cmake
cmake_minimum_required(VERSION 3.10)
project(demo)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
add_executable(demo main.cpp)
mkdir build && cd build
cmake ..
make
如 pthread:
g++ main.cpp -lpthread
CMake:
find_package(Threads REQUIRED)
target_link_libraries(demo Threads::Threads)
sudo apt install libopencv-devsudo apt install libboost-all-devsudo apt install libsqlite3-devsudo apt install gdb
g++ -g main.cpp -o demo
gdb ./demo
g++ -fsanitize=address -g main.cpp
g++ -fsanitize=thread -g main.cpp
#include <bits/stdc++.h> 不推荐export LD_LIBRARY_PATH=/your/lib/path:$LD_LIBRARY_PATH
或配置 /etc/ld.so.conf.d/
避免默认标准导致行为差异:
-std=c++17
sudo 编译普通项目sudoproject/
├── CMakeLists.txt
├── src/
├── include/
├── build/
└── third_party/
如果你愿意,我可以:
你现在是「初学 / 做项目 / 搞算法 / 嵌入式」哪种场景?