核心内容摘要
嵌入式开发避坑指南:如何解决u8类型溢出导致的warning #69-D告警
环境准备在开始使用CMake之前我们需要搭建合适的开发环境。
本教程使用以下环境编辑环境Visual Studio Code / Cursor编译环境Ubuntu
2
04 (通过VS Code Remote SSH模式)CMake安装方式一使用系统包管理器安装推荐Ubuntu/Debian系统sudoaptupdatesudoaptinstallcmake验证安装cmake --version预期输出cmake version
3.
2
3 CMake suite maintained and supported by Kitware (kitware.com/cmake).版本要求本教程对CMake版本的最低要求是
18。
不同Linux发行版的预装版本Linux发行版版本预装CMake版本Ubuntu LTS
2
04 (Jammy)
22Ubuntu LTS
2
04 (Noble)
28Debian12 (Bookworm)
22Fedora
3
28CentOS Stream
9
22Arch Linux滚动更新最新稳定版方式二源码编译安装可选如果需要最新版本或自定义安装# 下载源码wgethttps://cmake.org/files/v
28/cmake-
3.
28.
tar.gztar-zxvf cmake-
3.
28.
tar.gzcdcmake-
3.
2
3# 编译安装./bootstrapmake-j$(nproc)sudomakeinstallVS Code CMake插件安装VS Code的CMake插件提供了强大的开发支持语法高亮和代码补全智能分析和错误检查项目配置和构建支持调试集成安装步骤打开VS Code点击左侧活动栏中的扩展图标CtrlShiftX搜索并安装以下四个插件CMake- 官方CMake插件CMake Tools- 增强的CMake工具支持CMake Language Support- 语言支持和语法高亮CMake IntelliSense- 智能代码提示插件功能详解CMake Tools的主要功能配置管理自动检测和配置CMake项目构建支持一键构建项目调试集成与VS Code调试器无缝集成目标管理选择和构建特定的目标环境变量管理构建时的环境变量Remote SSH开发环境搭建对于需要在远程服务器上开发的项目VS Code Remote SSH提供了完美的解决方案。
环境要求本地Windows/macOS/Linux VS Code远程Linux服务器Ubuntu
2
04推荐网络SSH连接配置步骤步骤1安装Remote SSH扩展在VS Code扩展市场搜索 “Remote SSH” 并安装。
步骤2配置SSH连接在VS Code中按CtrlShiftP打开命令面板输入Remote-SSH: Connect to Host...选择Add New SSH Host输入SSH连接命令ssh usernameremote-host步骤3连接到远程主机选择配置的SSH主机VS Code会自动在远程主机上安装VS Code Server。
Remote SSH架构原理Visual Studio Code Remote SSH扩展的工作原理本地VS Code ←→ SSH连接 ←→ 远程VS Code Server ↓ 远程文件系统操作 ↓ 本地质量的开发体验优势所有操作在远程执行无需文件传输享受完整的VS Code功能IntelliSense、调试等支持复杂的远程开发场景第一个CMake项目让我们创建一个简单的CMake项目来验证环境配置。
项目结构my_first_cmake_project/ ├── CMakeLists.txt ├── main.cpp └── build/ # 构建目录自动生成步骤1创建项目目录mkdirmy_first_cmake_projectcdmy_first_cmake_project步骤2编写主程序 (main.cpp)#includeiostreamintmain(){std::coutHello, CMake World!std::endl;std::coutThis is my first CMake project!std::endl;return0;}步骤3创建CMake配置文件 (CMakeLists.txt)# 指定最低CMake版本 cmake_minimum_required(VERSION
3.
# 定义项目名称和版本 project(MyFirstCMakeProject VERSION
1.
# 设置C标准 set(CMAKE_CXX_STANDARD
set(CMAKE_CXX_STANDARD_REQUIRED ON) # 创建可执行文件 add_executable(my_app main.cpp)步骤4构建项目方法一命令行方式# 创建构建目录mkdirbuildcdbuild# 配置项目cmake..# 构建项目make方法二VS Code CMake Tools打开项目文件夹VS Code自动检测CMake项目点击底部的构建按钮或按CtrlShiftP→ “CMake: Build”步骤5运行程序./my_app预期输出Hello, CMake World! This is my first CMake project!CMakeLists.txt详解让我们深入了解CMake配置文件的核心组件基本结构cmake_minimum_required(VERSION
3.
# 指定CMake最低版本 project(MyProject VERSION
1.
# 定义项目信息 set(CMAKE_CXX_STANDARD
# 设置编译标准 add_executable(target sources...) # 定义构建目标常用CMake命令项目配置project(ProjectName VERSION
1.
0 DESCRIPTION Project description LANGUAGES CXX C )编译选项设置# 设置C标准 set(CMAKE_CXX_STANDARD
set(CMAKE_CXX_STANDARD_REQUIRED ON) # 添加编译选项 add_compile_options(-Wall -Wextra -O
# 设置构建类型 set(CMAKE_BUILD_TYPE Release) # Debug/Release/MinSizeRel/RelWithDebInfo包含目录# 添加包含目录 include_directories(include) include_directories(/usr/local/include)库链接# 查找系统库 find_package(Threads REQUIRED) # 链接库 target_link_libraries(my_app Threads::Threads)多文件项目示例对于包含多个源文件的项目项目结构multi_file_project/ ├── CMakeLists.txt ├── include/ │ └── utils.h ├── src/ │ ├── main.cpp │ └── utils.cpp └── build/CMakeLists.txtcmake_minimum_required(VERSION
3.
project(MultiFileProject VERSION
1.