Trae+Qt+MSVC环境配置

Trae

Trae是字节跳动基于VSCode推出的AI集成开发环境(IDE),是一款专为中文开发者深度定制的智能编程工具。其目标是通过AI技术实现从"Copilot"到"Autopilot"的编程模式演进。

类似这样的IDE比如Windsurf、Cursor,都是基于VSCode的,风格都一样。

背景

OK,既然是基于VSCode,那其实用法跟VSCode都差不多的。本文是记录在Trae中搭建Qt开发环境,作为QtCreator的重度依赖者,为了体验AI变成带来的高效,尝试从QtCreator转换到Trae,需要有一个适应过程,QtCreator作为Qt官方推出的IDE,自然是最能适配Qt项目开发的,环境配置也很简单,安装Qt的时候一套流程全都配好了。

这里主要是针对从QtCreator用户过来的宝子,前提是已经有Qt开发环境,如何在Trae(VSCode、Windsurf、Cursor都适用)中配置编译任务,以及设置一些在QtCreator中常见的配置和用法。

环境

测试是使用的版本是:Qt5.15.2,qmake+msvc2019编译。

正文

首先,打开Trae,要支持Qt工程及相关语法,需要安装相应的插件,直接在插件市场搜索qt和qml,安装一些基础插件就行了,我安装了这些:

然后还有C/C++的插件,如果要用到CMake编译的话,一起安装,我安装了这些:

然后导入一个现有的Qt项目,或者新建一个Qt工程。

Qt环境变量:

MSVC编译器环境变量:

正常来说,使用MSVC编译器,应该是对应使用nmake命令进行编译,但是由于nmake是单线程编译,速度比较慢,而QtCreator里面默认是配置用jom编译,jom支持多线程编译,速度很快,并且完全兼容nmake编译,所以上面添加Qt环境变量中,添加了QtCreator目录下的jom目录,就是为了能够使用jom进行编译。

而MSVC的环境变量,其实编译的时候直接运行一次VS安装目录下的这个脚本就行了 ,会自动配置相关的编译环境。

如果是x86就执行vcvars32.bat,x64就执行vcvars64.bat脚本。

所以前面的环境变量我们添加了C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build目录,就是为了方便快捷调用这两个脚本。

OK,接下来在Trae中设置编译任务。

快捷键:Ctrl+Shift+p

然后选择配置任务,开始编辑task.json文件:

我这边测试写的task.json 文件如下:

bash 复制代码
{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "qmake",
            "type": "shell",
            "command": "qmake",
            "args": [
                "${workspaceFolder}/QtProject.pro",
                "CONFIG+=release"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        },
        {
            "label": "qmake-debug",
            "type": "shell",
            "command": "qmake",
            "args": [
                "${workspaceFolder}/QtProject.pro",
                "CONFIG+=debug"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        },
        {
            "label": "build",
            "type": "shell",
            "command": "cmd",
            "args": [
                "/c",
                "\"call vcvars64.bat && jom\""
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "dependsOn": ["qmake"]
        },
        {
            "label": "build-debug",
            "type": "shell",
            "command": "cmd",
            "args": [
                "/c",
                "\"call vcvars64.bat && jom\""
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "dependsOn": ["qmake-debug"]
        },
        {
            "label": "clean",
            "type": "shell",
            "options": {
                "cwd": "${workspaceFolder}/"
            },
            "command": "jom",
            "args": [
                "clean"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        },
        {
            "label": "Run-Release",
            "type": "process",
            "options": {
                "cwd": "${workspaceFolder}/bin"
            },
            "command": "QtProject.exe",
            "dependsOn": [
                "build"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

内容其实很简单,就是配置每一项需要执行的任务,自定义相关标签,标明是要做什么任务的,然后指定任务的执行命令即可。

我这里配置了 release模式的 qmake,build,Run,debug模式的qmake,build。还有clean,clean也是直接通过jom来调用。

重点看build:

cpp 复制代码
{
     "label": "build",
     "type": "shell",
     "command": "cmd",
     "args": [
         "/c",
         "\"call vcvars64.bat && jom\""
     ],
     "group": {
         "kind": "build",
         "isDefault": true
     },
     "dependsOn": ["qmake"]
},

这里是执行shell命令,调用vcvars64.bat 以及 jom编译,使用了&&符号连接两个命令先后执行。

需要注意的是,执行命令的终端默认使用的是PowerShell,直接执行这个任务会报错,因为PowerShell中不支持&&符号连接两个命令。所以我们需要切换到cmd再执行,很简单,设置一下默认终端即可:

在底部窗口工具栏上点击下拉,选择默认配置文件:

然后会弹出然你选择默认,这时候点击Command Prompt即可。

这样我们的终端就默认变成cmd了,再执行以上task任务的时候就会默认使用cmd。

配置好task后执行命令,快捷键 Ctrl+Shift+B,选择要运行生成的任务即可:

以上配置已完成。

but~

快捷键

习惯了Qtcreator中直接快捷键Ctrl+R就能编译运行程序,但是在这里要点击几个步骤才能执行任务,其实我们可以直接将任务自定义快捷键的,这样就能够快速的执行了任务了。

在文件菜单打开键盘快捷键

然后点击标题栏右边这个图标

添加json字段:

cpp 复制代码
    {
        "key": "ctrl+r", // 运行
        "command": "workbench.action.tasks.runTask",
        "args": "Run-Release" // 任务的 label 名称
    },
    {
        "key": "ctrl+b", // 编译
        "command": "workbench.action.tasks.runTask",
        "args": "build" // 任务的 label 名称
    },

这里指定快捷键以及要运行的task中的label标签名称即可。这样就可以通过快捷键快速运行啦。

相关推荐
数巨小码人1 小时前
QT SQL框架及QSqlDatabase类
jvm·sql·qt
mcusun20003 小时前
VScode 使用Deepseek又方便又好用的另一款插件
ide·vscode·编辑器·deepseek
程序员老舅4 小时前
C++ Qt项目教程:WebServer网络测试工具
c++·qt·测试工具·webserver·qt项目·qt项目实战
enyp805 小时前
Qt QStackedWidget 总结
开发语言·qt
waicsdn_haha9 小时前
Visual Studio Code 2025 安装与高效配置教程
c语言·ide·windows·vscode·微软·编辑器·win7
镰圈量化12 小时前
当电脑上有几个python版本Vscode选择特定版本python
开发语言·vscode·python
水瓶丫头站住13 小时前
Qt中QDockWidget的使用方式
开发语言·qt
laimaxgg13 小时前
Qt常用控件之数字显示控件QLCDNumber
开发语言·c++·qt·qt5·qt6.3
牵牛老人14 小时前
Qt开发中出现中文乱码问题深度解析与解决方案
开发语言·qt