在 Debian 上高效编译 C++ 的实用指南
一 环境准备与基础
sudo apt update && sudo apt install build-essential g++。gcc hello.cpp -o hello -lstdc++)。g++ hello.cpp -o hello && ./hello。二 提升构建速度的工程化手段
sudo apt install ccache;使用:在命令前加 ccache(如 ccache g++ …)或设置环境变量 CCACHE_PREFIX=ccache。g++ -x c++-header common.h -o common.h.gch),编译时用 -include common.h 引入以加速解析。#include、避免链接未使用的库,降低解析与链接开销。三 生成高性能可执行文件的编译选项
四 推荐配置与示例
g++ -O2 -march=native -flto hello.cpp -o hellomake -j$(nproc) 或 CCACHE_PREFIX=ccache make -j$(nproc)# CMakeLists.txt cmake_minimum_required(VERSION 3.16) project(MyApp LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_BUILD_TYPE Release) add_compile_options(-O2 -march=native -flto) add_link_options(-flto) add_executable(myapp main.cpp) 构建:mkdir -p build && cd build && cmake -DCMAKE_BUILD_TYPE=Release .. && make -j$(nproc)# 1) 采集阶段 g++ -O2 -fprofile-generate -fopenmp main.cpp -o myapp-gen ./myapp-gen # 2) 使用阶段 g++ -O2 -fprofile-use -fopenmp main.cpp -o myapp