(四) 实战Trae 编译调试C++项目(以minidocx为例)

本文章主要记录使用Trae + CMake + LLVM + msvc 配合一起,编译minidocx项目,并调试.
使用工具链包括 LLVM MSVC.
注意:CMake 和 编译相关不熟悉的可以参考本专题其他文章
Trae编译C++专题

一 项目minidocx

1.1 下载

地址:github/minidocx or gitee/mindocx
这是一个使用c++ 20 的项目

1.2 项目介绍

根据项目介绍,这是一个c++ 生成word docx文件的程序.
该项目最终会生成5个exe作为例子

  • list.exe
  • myapp.exe
  • pict.exe
  • style.exe
  • table.exe

1.3 解压/clone到本地

D:\Code\CodeTest\minidocx-next
(实际上是使用的该项目的next分支)

二 安装程序

2.1 安装Trae

1.下载安装

下载:Trae国内版 - 国内手机号登录
下载:Trae国际版 - github账号登录
二选一下载安装即可

2.打开minidocx

  1. 点击应用程序 在这里插入图片描述
  2. 打开文件夹
    在这里插入图片描述
  3. 选择目录
    在这里插入图片描述
  4. 打开"资源管理器" 可以看到代码
    在这里插入图片描述

2.2 CMake 安装

下载 CMake地址
安装后要设置环境变量Path
开始->设置->系统->高级系统设置->“环境变量” ->“Path”.增加如下路径

D:\Program File\CMake\bin

(说明:笔者将CMake安装到了D:\Program File\CMake)

2.3 安装vs2022msvc工具链

下载:visualstudio
选择安装:
在这里插入图片描述
msvc工具链是自动设置path等路径.不需要手动修改

2.4 安装LLVM

下载 LLVM
(笔者安装的路径为D:\Code\CodeTool\LLVM)
开始->设置->系统->高级系统设置->“环境变量” ->Path.增加如下路径
在这里插入图片描述

2.5 安装Trae插件

1.所需插件

  1. Extension Pack for C/C++(KylinIdeTeam) 已经包含:
    1.1 kylin Clangd
    1.2 C/C++ Debug(gdb) – 因为这个,所以下载较慢
    1.3 CMake Intelli
    1.4 CMake Tool(fork)
    1.5 Kylin Native Debug
  2. CodeLLDB (vadimcn)

2.安装插件

在搜索窗口搜索插件

  1. Extension Pack for C/C++
    (该插件可能耗时较长)
    在这里插入图片描述
  2. CodeLLDB
    按照1中的步骤搜索 “CodeLLDB”(在上图②中搜索)再安装

3 重启Trae

安装以上 CMake LLVM MSVC和Trae的各种插件后,建议重启Trae

三 编译

3.1 新添编译配置 my-clang-cl

1) 配置

点击下图CMake插件①的图标
点击②右侧的修改图标
在这里插入图片描述

2)新添预设

点击修改箭头会弹出下图.点击:添加新预设
在这里插入图片描述

3)从编译器创建

选择最下面的"从编译器创建"
在这里插入图片描述

4) 选择编译器 Clang-cl 20.1.1

在这里插入图片描述

5)输入配置名my-clang-cl

‘这个配置名影响以后输出代码的目录位置’
在这里插入图片描述

6) 观察变化

  1. CMakeTool插件(点击①). 在配置行出现:my-clang-cl(见②)
    在这里插入图片描述

2.CMakePresets.json文件中新增下列内容:
打开资源管理器(点击①),点击CMakePresets.json(见②)
在这里插入图片描述
请补充一句话

 "generator":"Ninja"

补充结果为:
在这里插入图片描述
如果不补上这句,CMake就去生成msvc的sln和vcproj(使用MSVC工具链)
另外: CMakePresets.json文件如果不存在,可以自己添加此文件

3.2 生成

1) 点击"删除缓存并重新配置"

点击下图 ①
在这里插入图片描述

2) 点击生成(在下面状态栏)

点击下图 ② 生成
在这里插入图片描述

3)观察生成结果

中间虽然有warning ,不过还是全部都生成了
在这里插入图片描述

4)查看生成的代码

在CMakePresets.json中有如下句子,表明了CMake创建的项目在如下位置

  "binaryDir": "${sourceDir}/out/build/${presetName}",

所以在左侧代码窗口可以看见
在①处打开资源管理器
在②处可以看到解决方案都放到了/out/build/{配置名}目录下
在③处可以看到是使用clang-cl方式整理的解决方案
在④处可以看到是使用msvc方式整理出的解决方案(使用msvc工具链时产生,本文章未涉及)
在这里插入图片描述

四 调试

4.1 选择调试器 和 调试exe

在下图①位置,选择调试器lldb (之前我们选择的是clang-cl编译的)
在下图②位置,选择调试的list.exe
在这里插入图片描述

4.2增加断点:

在项目的 examples\list.cpp文件中增加断点
下图选中①list.cpp
在第11行增加断点,见下图②

在这里插入图片描述

4.3 开始调试

点击状态栏①右侧的小bug,之后可以进入断点

在这里插入图片描述

### 如何在 Trae 中配置 C++ 环境 为了在 Trae 中配置 C++ 开发环境,可以按照以下方式操作并结合已有的参考资料来实现完整的开发流程。 #### 1. 创建基础项目结构 首先,在本地创建一个新的 `.cpp` 文件作为测试程序。如: ```cpp #include <iostream> using namespace std; int main() { cout << "Hello, this is a test from Trae!" << endl; return 0; } ``` 上述代码是一个简单的 C++ 测试程序[^1],用于验证编译器和运行环境是否正常工作。 --- #### 2. 安装必要的工具链 确保已经安装了支持 C++编译器(如 GCC 或 Clang),以及调试工具(如 GDB)。如果尚未安装这些工具,可以通过包管理器进行安装。如,在 Ubuntu 上执行以下命令: ```bash sudo apt update && sudo apt install build-essential gdb ``` 对于 Windows 用户,推荐通过 MinGW-W64 或者 MSYS2 来获取跨平台的 GNU 工具链[^3]。 --- #### 3. 配置 Trae 支持 C++ 完成基本安装后,需进一步设置 Trae 的集成开发功能以适配 C++ 编写需求。具体步骤如下: - **启动 Trae 并导入 VS Code 设置** 根据引用描述[^2],可以选择从 Visual Studio Code 导入现有配置文件。此过程会自动同步扩展插件和支持的语言特性,包括但不限于 IntelliSense 和语法高亮显示。 - **添加构建任务** 打开 `tasks.json` 文件或者新建一个 JSON 文件定义编译指令。以下是针对 C++ 的典型配置示: ```json { "version": "2.0.0", "tasks": [ { "label": "build cpp program", "type": "shell", "command": "g++", "args": [ "-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}" ], "group": { "kind": "build", "isDefault": true }, "problemMatcher": ["$gcc"] } ] } ``` 该脚本允许一键调用 g++ 对当前编辑中的源码实施编译处理,并生成可执行二进制文件。 --- #### 4. 使用终端快捷命令运行应用 当一切准备就绪之后,利用内置终端窗口尝试执行刚才建立的任务成果。假设目标名称叫做 `test_program` ,那么只需键入下面语句即可查看最终效果: ```bash ./test_program ``` 与此同时,也可以借助先前提到过的 traefik 命令加载特定目录下的资源以便远程访问或协作共享。 --- #### 总结 综上所述,要在 Trae 当中顺利开展基于 C/C++ 技术栈的工作流,除了依赖官方文档指导外还需要额外关注外部依赖项的选择与维护状况。只有这样才能真正意义上达成高效便捷的目的!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值