2. 开发环境与工具链:Linux开发环境搭建、GCC/G++编译器、CMake构建系统、VSCode与CLion配置
说实话,C++开发的第一步,往往不是写代码,而是搞定环境。我见过太多新手在环境配置上卡了一整天,最后心态崩了。其实没那么复杂,今天我就带你走一遍,把坑都填平。
2.1 Linux开发环境搭建
我个人习惯用Ubuntu,原因很简单——社区活跃,遇到问题搜一下就有答案。你如果刚入门,建议选Ubuntu 20.04 LTS或22.04 LTS,稳定,支持周期长。
核心要点:不要用Windows子系统WSL1,用WSL2。WSL1的网络和文件系统性能差很多,我踩过这个坑。
安装完系统后,第一件事是更新包管理器:
sudo apt update
sudo apt upgrade -y
然后安装基础开发工具:
sudo apt install build-essential gdb cmake git -y
build-essential 这个包会帮你装好GCC、G++和一些基础库。嗯,这里要注意,它装的不一定是最新版,但够用。
2.2 GCC/G++编译器
GCC是Linux下的编译器老大。G++是它的C++前端。说白了,你写好的.cpp文件,靠它变成可执行文件。
检查版本:
g++ --version
一个最简单的编译命令:
g++ main.cpp -o main
但实际项目里,没人这么干。为什么?因为文件多了,你记不住所有依赖。我曾经在一个项目里手动编译了30多个文件,编译命令写了快200个字符,后来发现漏了一个依赖,链接报错,查了半小时。
所以,我们得用构建系统。
| 编译选项 | 作用 | 我常用的值 |
|---|---|---|
| -Wall | 开启所有警告 | 必加 |
| -Wextra | 额外警告 | 推荐 |
| -O2 | 优化等级 | 发布用 |
| -g | 生成调试信息 | 调试用 |
| -std=c++17 | 指定C++标准 | 现在项目基本用17或20 |
小技巧:调试阶段用 -g -O0,发布阶段用 -O2 -DNDEBUG。别在发布版里留调试信息,会暴露源码路径。
2.3 CMake构建系统
CMake是目前C++项目的事实标准。它不直接编译,而是生成Makefile或Ninja文件,然后让编译器干活。
一个最简单的CMakeLists.txt:
cmake_minimum_required(VERSION 3.10)
project(MyProject)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
add_executable(my_app main.cpp)
构建命令:
mkdir build && cd build
cmake ..
make
我个人习惯用out-of-source构建,也就是在项目根目录外建一个build文件夹。这样源码目录干干净净,不会混入编译产物。
避坑指南:我曾经在项目里直接 cmake . 然后 make,结果build目录和源码混在一起,git提交时忘了加.gitignore,把一堆.o文件推上去了。队友差点没砍死我。
稍微复杂一点的项目,我会这样组织:
project/
├── CMakeLists.txt
├── src/
│ ├── CMakeLists.txt
│ └── main.cpp
├── include/
│ └── mylib.h
└── build/
根CMakeLists.txt里用 add_subdirectory(src) 引入子目录。这样模块清晰,后期加功能也方便。
2.4 VSCode与CLion配置
编辑器这东西,选顺手的最重要。我两个都用,但场景不同。
VSCode配置
VSCode轻量,适合快速编辑和调试小项目。你需要装这几个插件:
- C/C++(微软官方)——语法高亮、智能提示
- CMake Tools——直接在VSCode里运行CMake
- Code Runner——一键运行单个文件
- GitLens——看代码是谁写的,方便甩锅
配置 .vscode/tasks.json 来自动编译:
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "cmake --build build",
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
然后按 Ctrl+Shift+B 就能编译。嗯,这里要注意,你得先手动 cmake .. 一次,生成build目录。
CLion配置
CLion是JetBrains家的,功能全,但吃内存。我一般做大项目时才开它。
CLion自带CMake支持,开箱即用。你只需要:
- File -> Settings -> Build, Execution, Deployment -> Toolchains
- 选择你的GCC/G++路径(一般自动识别)
- 设置CMake路径(如果系统没装,CLion会提示你装)
然后直接点那个绿色三角就能跑。CLion的调试器比VSCode强,尤其是查看复杂数据结构时,比如std::map里的内容,CLion展示得很清楚。
我的建议:日常写小demo用VSCode,做大型项目用CLion。如果你电脑内存只有8G,别开CLion,会卡到你怀疑人生。
2.5 知识体系总览
下面这张图,是我整理的本章节核心逻辑。你看一眼,心里就有数了。
这张图把四个核心模块串起来了。你从Linux环境出发,装好GCC/G++,用CMake管理项目,最后用IDE写代码调试。每一步都踩实了,后面写代码才不慌。
最后说一句:环境配置这东西,一次搞定,终身受益。别嫌麻烦,花半天时间把环境搭好,后面省下的时间是以周计算的。
可可精品资料库