一、安装 Qt 开发环境
确保已经安装了 Qt,没有安装的可以自己在网上搜索怎么安装,安装时可选择不安装qt creator,但是qt开发库和编译器要安装,这里我选择的编译器是MinGW,
安装好以后,记录下qt开发库和MinGW编译器的安装路径,我这里路径如下:
名称 | 路径 |
---|---|
QT的安装路径 | D:\Qt |
mingw的安装路径 | D:\Qt\6.5.0\mingw_64 |
二、安装Trae IDE
Trae目前分为海外版和国内版,海外版需要使用梯子,国内版直接可以使用,海外版和国内版最主要区别就是国际版可以使用Claude和GPT模型,这里不多做说明,海外版和国内版网址分别如下:
- 海外版网址:https://www.trae.ai/
- 国内版网址:https://www.trae.com.cn/
怎么安装可以根据官方文档的说明,如下是官方文档网址:
https://docs.trae.com.cn/docs/set-up-trae
这个网址是国内版Trae的文档,按照上面的说明下载安装就可以了。
三、安装c/c++插件
Trae虽然也是套壳vscode,但是它的插件市场与vscode不一样,没有使用vscode官方的插件市场,而是使用的open-vsx的插件,而c/c++插件只有vscode官方插件市场才有,trae是不能直接安装的,怎么安装可以参考我公众号的上一篇文章:
Trae插件革命:用VSPlugin Helper实现VSCode市场插件全自动安装
四、使用trae自动配置当前qt项目开发和编译环境
首先新建一个项目路径,这里我的路径指定在E:\QT5_Project
,在这个目录下我新建了一个名为TraeHelp_Pro
的目录,然后打开Trae,在如下界面选择打开文件夹:
这样就自动生成了一个名为TraeHelp_Pro
的项目,然后在build模式下,给AI发这样一段描述,如下:
这样它就自动帮我生成了相应的目录和文件,如下:
代码生成以后,需要进行构建和调试,接下来要求Trae继续帮我们生成构建和调试的配置文件:
等待AI自动生成.vscode目录和两个json文件以后,点击全部接受就可以了。
构建和调试配置文件生成以后,我们要检查一下,看看相应路径是否跟你的安装路径符合,这里我检查发现有点不对,我的qt版本是6.5.0,它自动生成的是6.5.2,可以要求AI改一下:
这样配置文件就纠正过来了。
接下来就可以进行构建和调试了,可以直接在Trae编辑器中按F5启动调试,或使用Ctrl+Shift+B进行构建。编辑器会自动处理qmake和make的过程,确保程序正确编译和运行。
接下来使用Ctrl+Shift+B进行构建,发现有编译报错,我直接把错误截图丢给AI,如下:
一般情况下,AI会自动帮你修复这个报错并自动调用终端进行构建,当然过程中需要你点击运行,如果第一次修复还是报错,它会再次试图修复,直到不再报错为止。
这里我发现它生成的编译过程中间文件都放在当前目录下了,有点杂乱无章,那么就可以要求trae修改配置文件,把中间文件都生成到build目录下,如下:
注意过程中,删除或者执行命令的动作它不能自动进行,需要我们配合点击删除或者运行,如下:
这里它还是报错,提示要一个一个目录的删,我们配合AI就行了。
接下来我继续构建,发现中间文件还是没有生成到build目录下,原来它上一步只删除了相应的中间文件,没有修改task.json,我们可以要求它修改task.json就行了。
注意构建的时候如果qmake或者g++命令不能识别的情况,要把相应的路径加入到环境变量中,比如我这里是D:\Qt\Tools\mingw1120_64\bin 和 D:\Qt\6.5.0\mingw_64\bin 两个目录。
构建有可能不会一帆风顺,中间还会出错,大多数情况下把错误丢给AI,它会帮你解决,极少部分情况就要靠程序员自己了。
接下来我把我这里可以正确构建和调试的json文件内容列出来,如下:
创建 tasks.json 用于构建
{"version": "2.0.0","tasks": [{"label": "qmake","type": "shell","command": "D:\\Qt\\6.5.0\\mingw_64\\bin\\qmake.exe","args": ["${workspaceFolder}\\TraeHelp_Pro.pro","-spec","win32-g++","CONFIG+=debug","CONFIG+=separate_debug_info"],"options": {"cwd": "${workspaceFolder}/build"},"problemMatcher": []},{"label": "make","type": "shell","command": "D:\\Qt\\Tools\\mingw1120_64\\bin\\mingw32-make.exe","args": ["-j4"],"options": {"cwd": "${workspaceFolder}/build"},"dependsOn": ["qmake"],"group": {"kind": "build","isDefault": true},"problemMatcher": ["$gcc"]},{"label": "clean","type": "shell","windows": {"command": "cmd","args": ["/C","if exist build (cd build && if exist debug rmdir /s /q debug moc obj release ui) && if exist Makefile del /f Makefile* && if exist .qmake.stash del /f .qmake.stash"]},"options": {"cwd": "${workspaceFolder}"},"problemMatcher": []}]
}
注意:
- 请根据你的 Qt 实际安装路径调整上述配置文件中的路径
- 确保项目中的 .pro 文件配置正确
- 可以使用 Ctrl+Shift+B 触发构建 或者crl + shift + p -->run task --> make 来触发
- crl + shift + p -->run task --> clean 来触发清除的动作,具体如下:
- 使用快捷键ctrl + shift + p 打开命令面板
- 在命令面板中输入
Tasks: Run Task
,点击以后选择clean
任务
创建lanuch.json用于调试
{"version": "0.2.0","configurations": [{"name": "Debug","type": "cppdbg","request": "launch","program": "${workspaceFolder}/build/debug/TraeHelp_Pro.exe","args": [],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": [{"name": "PATH","value": "D:\\Qt\\6.5.0\\mingw_64\\bin;D:\\Qt\\Tools\\mingw1120_64\\bin;${env:PATH}"}],"externalConsole": true,"MIMode": "gdb","miDebuggerPath": "D:\\Qt\\Tools\\mingw1120_64\\bin\\gdb.exe","setupCommands": [{"description": "为 gdb 启用整齐打印","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "make"}]
}
调试步骤:
-
在代码中设置断点:
- 点击行号左侧空白处
- 或按 F9 在当前行设置断点
-
启动调试:
- 按 F5 开始调试
- 或点击左侧调试面板中的绿色播放按钮
-
调试控制:
- F5:继续执行
- F10:单步执行
- F11:单步进入
- Shift+F11:单步跳出
- Shift+F5:停止调试
-
调试窗口:
- 变量窗口:查看当前变量值
- 监视窗口:添加要监视的变量
- 调用堆栈:查看函数调用链
- 断点窗口:管理所有断点
如果遇到调试器无法启动,请检查:
- GDB 路径是否正确
- 是否已成功构建项目
- Qt 的 bin 目录是否在 PATH 中
构建完成后生成的程序如下:
总结,可以看到,没有使用qt creator,也没有在trae中安装qt相关的插件,我也没有写一行代码,纯粹用嘴使用trae开发出了一个qt程序。
当然,这只是一个简单的小程序,如果需要具体实现可用的功能,还需要我们继续跟AI交流。