当前位置: 首页 > news >正文

(二)Trae 配置C++ 编译

Trae配置c++编译

  • 零 CMake 编译C++
    • 0.1 下载安装
    • 0.2 安装设置
    • 0.3 三种编译方式(见 下文 一 二 三)
    • 0.4 调试 (见 下文四)
  • 一 使用MSVC方式编译
    • 1.1 安装编译环境
    • 1.2安装插件
    • 1.3 设置文件
  • 二 使用GCC方式
    • 2.1 安装编译环境
      • 2.1.1下载:[MinGw](https://gcc-mcf.lhmouse.com/)
      • 2.1.2安装:(以ucrt为例)
    • 2.2安装插件
    • 2.3 配置文件
  • 三 使用Clang方式
    • 3.1安装LLVM
    • 3.2插件
    • 3.3 配置文件
  • 四 开始编译和调试
    • 4.1 项目新增CMakeLists.txt文件
    • 4.2 CMakeTool插件开始编译
      • 1. CMakeTool插件
      • 2. 选择编译器,生成构建文件()
      • 3. 生成exe:
      • 4. 调试

零 CMake 编译C++

0.1 下载安装

本文章使用Trae编译C++需要先安装CMake
下载 CMake地址

0.2 安装设置

  1. 设置 环境变量:Path
    开始->设置->系统->高级系统设置->“环境变量” ->Path增加如下路径
    在这里插入图片描述
  2. 测试安装
 c:\>cmake --versioncmake version 3.31.7

0.3 三种编译方式(见 下文 一 二 三)

  1. 使用MSVC方式编译
  2. 使用GCC方式
  3. 使用LLVM(Clang)方式编译

0.4 调试 (见 下文四)


一 使用MSVC方式编译

1.1 安装编译环境

下载地址 vs_installer
使用vs_installer 中的 C++编译选项

在这里插入图片描述
安装完成后在开始菜单,在搜索框键入dev后出现提示如下.

版本
vs2019在这里插入图片描述
vs2022在这里插入图片描述

1.2安装插件

  1. C/C++ (微软官方)(当前已经不能使用)
  2. CMake (twxs)
  3. CMake Tools(ms-vscode)

1.3 设置文件

暂时未能调试,所以暂缺


二 使用GCC方式

2.1 安装编译环境

2.1.1下载:MinGw

1.ucrt 是比较新的
2.msvcrt是兼容老版本

2.1.2安装:(以ucrt为例)

1.解压缩到D盘(笔者解压路径为 d:\Code\CodeTool\ucrt64)
在这里插入图片描述
2.设置环境变量

1新增变量 MinGW_HOME
在这里插入图片描述
2.系统变量Path增加如下内容
在这里插入图片描述
开始->设置->系统->高级系统设置->“环境变量”->Path

2.2安装插件

  1. CMake (twxs)
  2. CMake Tools(ms-vscode)
  3. C/C++ Debug(KylinIdeTeam)

2.3 配置文件

  1. launch.json 调试设置
    .vscode目录下添加launch.json文件如下
    下面的cpp3需要手动改为自己的exe名称
{"version": "0.2.0","configurations": [{"name": "Debug with GDB","type": "cppdbg","request": "launch","program": "${workspaceFolder}/bin/cpp3.exe","args": [],"cwd": "${workspaceFolder}","MIMode": "gdb",}]
}

2.settings.json
.vscode目录下添加settings.json

{"files.associations": {"xlocmes": "cpp","istream": "cpp","ostream": "cpp","xiosbase": "cpp","xutility": "cpp"}
}

三 使用Clang方式

3.1安装LLVM

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

3.2插件

  1. CMake (twxs)
  2. CMake Tools(ms-vscode)
  3. Clangd(llvm-ms-code)
  4. Codelldb(vadimcn)

3.3 配置文件

  1. launch.json 调试设置
    .vscode目录下添加launch.json文件如下
    下面的cpp3需要手动改为自己的exe名称
{"version": "0.2.0","configurations": [{"name": "Debug with LLDB","type": "lldb","request": "launch","program": "${workspaceFolder}/bin/cpp3.exe","args": [],"cwd": "${workspaceFolder}"} ]
}

2.settings.json
.vscode目录下添加settings.json

{"files.associations": {"xlocmes": "cpp","istream": "cpp","ostream": "cpp","xiosbase": "cpp","xutility": "cpp"}
}

四 开始编译和调试

4.1 项目新增CMakeLists.txt文件

项目名称 cpp3
c++版本 c++17

# CMake 最低版本要求
cmake_minimum_required(VERSION 3.10)# 项目名称
project(cpp3)# 设置C++标准
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)# 添加可执行文件
add_executable(${PROJECT_NAME} main.cpp)# 设置输出目录
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)# 添加头文件搜索路径
include_directories(${PROJECT_SOURCE_DIR}/include)# 添加库文件搜索路径
link_directories(${PROJECT_SOURCE_DIR}/lib)

4.2 CMakeTool插件开始编译

1. CMakeTool插件

①打开CMakeTool插件:
②选择编译器 见图2
③ 编译选项 Debug Release等
图1.CMakeTool页面

2. 选择编译器,生成构建文件()

a. 首次可以使用扫描本机编译器
④ 扫描本机的编译器:
b. 下面可以切换编译器,生成构建文件
⑤Clang++ 编译器 (生成build.ninja)
⑥vs2019(vs:sln+vcproj )
⑦vs2022(vs:sln+vcproj )
GCC 15.0.1(Makefile)
选择编译器后会生成构建文件 1.LLVM:build.ninja /2.vs:sln+vcproj / 3.MinGw:Makefile 等构建文件
在这里插入图片描述

3. 生成exe:

状态栏下点击"生成",会根据构建文件(sln/build.ninja/makefile)去生成exe
在这里插入图片描述

4. 调试

a.增加main.cpp上断点
b.⑧点击调试页面
c.选择调试器
⑨LLDB调试 (对应launch.json的"Debug with LLDB",使用build.ninja编译exe)
⑩g++编译(对应Launch.json的"Debug whit GDB",使用makefile编译的exe)
d.再点击那个调试按钮(小虫子)
在这里插入图片描述
5.清理
每次更换编译器,可以先执行清理缓存(见下图) ,再执行 3.生成 4.调试
在这里插入图片描述

相关文章:

  • 少儿编程路线规划
  • 什么是零缺陷质量管理?
  • PHP怎样判断浏览器类型和浏览器语言?
  • CF1016赛后总结
  • 2025年Q1数据安全政策、规范、标准以及报告汇总共92份(附下载)
  • KWDB 创作者计划 KWDB(KaiwuDB)系列专题 (四) KWDB核心概念解析:多模、时序与分布式
  • 关于UE5的抗锯齿和TAA
  • DSA数据结构与算法 4
  • 洛谷P1177【模板】排序:十种排序算法全解(1)
  • 【java实现+4种变体完整例子】排序算法中【基数排序】的详细解析,包含基础实现、常见变体的完整代码示例,以及各变体的对比表格
  • Jsp技术入门指南【七】JSP动作讲解
  • Tracepoints for the VFS?
  • 通过docker create与export来分析诊断故障镜像
  • 8 编程笔记全攻略:Markdown 语法精讲、Typora 编辑器全指南(含安装激活、基础配置、快捷键详解、使用技巧)
  • day46——两数之和-输入有序数组(LeetCode-167)
  • PHP怎样连接MySQL数据库?
  • python函数之间嵌套使用yield
  • sqli-labs之Less-7 GET注入写shell
  • CPU与GPU之间的交互
  • 【C++】新手入门指南(上)
  • 上海崇明“人鸟争食”何解?检察机关推动各方寻找最优解
  • 两日内连续施压,特朗普再次喊话美联储降息
  • 正义网评“一男两女举办婚礼”:“一夫多妻”流量闹剧该歇了
  • 广西旱情如何?农业厅:近半数农田墒情不足至干旱,本月降雨将渐增
  • 奥利弗·沙赫特博士:集群是产业集聚地,更是“超级连接器”
  • 霸王茶姬成美股“中国茶饮第一股”:首日涨近16%,市值60亿美元