无需qt-creator,使用Trae从0到1生成qt的开发、构建、调试环境

发布于:2025-03-21 ⋅ 阅读:(13) ⋅ 点赞:(0)

一、安装 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://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": []
        }
    ]
}

注意:

  1. 请根据你的 Qt 实际安装路径调整上述配置文件中的路径
  2. 确保项目中的 .pro 文件配置正确
  3. 可以使用 Ctrl+Shift+B 触发构建 或者crl + shift + p -->run task --> make 来触发
  4. 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"
        }
    ]
}

调试步骤:

  1. 在代码中设置断点:

    • 点击行号左侧空白处
    • 或按 F9 在当前行设置断点
  2. 启动调试:

    • 按 F5 开始调试
    • 或点击左侧调试面板中的绿色播放按钮
  3. 调试控制:

    • F5:继续执行
    • F10:单步执行
    • F11:单步进入
    • Shift+F11:单步跳出
    • Shift+F5:停止调试
  4. 调试窗口:

    • 变量窗口:查看当前变量值
    • 监视窗口:添加要监视的变量
    • 调用堆栈:查看函数调用链
    • 断点窗口:管理所有断点

如果遇到调试器无法启动,请检查:

  1. GDB 路径是否正确
  2. 是否已成功构建项目
  3. Qt 的 bin 目录是否在 PATH 中

构建完成后生成的程序如下:

总结,可以看到,没有使用qt creator,也没有在trae中安装qt相关的插件,我也没有写一行代码,纯粹用嘴使用trae开发出了一个qt程序。

当然,这只是一个简单的小程序,如果需要具体实现可用的功能,还需要我们继续跟AI交流。