用AI开发QT——Qt与Trae开发环境搭建

一、Qt6安装

  1. 下载社区版 线上安装器

https://www.qt.io/development/download-qt-installer-oss

  1. 安装时,选择个人用户
  2. 安装插件运行 Qt Maintenance Tool,可以选择qt一些扩展插件

二、Trae安装

  1. 下载Trae安装
  2. 注册大模型,增加API Key
  • 这里deepseek最便宜
  1. 安装插件
  2. 解决代码报错问题
  • 终端运行 D:\Qt\Tools\CMake_64\bin\cmake.exe --version , 检查命令是否正确
  • 先关掉qt creator,删除build文件夹
  • 运行 env:Path = "D:\\Qt\\Tools\\mingw1310_64\\bin;" + env:Path
  • 再运行 D:\Qt\Tools\CMake_64\bin\cmake.exe -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_PREFIX_PATH="D:/Qt/6.11.0/mingw_64" -G "MinGW Makefiles"
  • 再打开qt creator,生成build文件夹,或者运行下
  • 搜索build文件夹 *.json,找到compile_commands.json
  • 拷贝这个json在项目根目录
  • 重新开一下Trae,发现报错没有了

这个json是一个项目清单,clangd需要这个清单,才会找到对应的索引

三、CMake的解释

CMake 是一个跨平台的构建系统生成器,不是一个编译器,也不是构建工具本身,而是一个"构建系统的构建工具"。

CMake 的主要作用
  1. 跨平台构建配置

    同一个项目可以在不同平台上生成对应的构建文件:

    Windows:生成 Visual Studio 的 .sln和 .vcxproj文件

    Linux/macOS:生成 Makefile文件

    macOS:也可以生成 Xcode 项目文件

    其他:Ninja、CodeBlocks 等

  2. CMake 会自动查找:

    Qt 安装在哪里

    需要的头文件路径

    需要链接的库文件

    编译选项等

  3. 简化构建过程

    没有 CMake 时,每个平台都要写不同的构建文件:

    Windows:*.vcxproj

    Linux:Makefile

    macOS:xcodeproj

    有了 CMake,只需写一份 CMakeLists.txt。

历史背景:

Qt 4/5 时代:主要使用 qmake(Qt 自带的构建工具)

Qt 6 开始:官方推荐使用 CMake,qmake 逐渐被淘汰

Qt 6:CMake 是推荐,qmake 仍保留但不再推荐新项目使用

四、制作快速生成cmake的bat文件

1. cmake.bat

删除原来的CMakeFiles文件,并快速生成CMakeFiles文件

bash 复制代码
@echo off
if exist "CMakeFiles" rmdir /s /q "CMakeFiles"
set PATH=D:\Qt\Tools\mingw1310_64\bin;%PATH%
D:\Qt\Tools\CMake_64\bin\cmake.exe -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_PREFIX_PATH="D:/Qt/6.11.0/mingw_64" -G "MinGW Makefiles"

2. 生成后,在qt里先运行下,生成最新的build文件

3. copy_json.bat

拷贝compile_commands.json到根目录

bash 复制代码
@echo off
copy /Y "build\Desktop_Qt_6_11_0_MinGW_64_bit-Release\.qtc_clangd\compile_commands.json" "compile_commands.json"

4. 重启Trae,才能看到解析错误消失

五、Gitee关联

  1. 点击源代码管理,点击 初始化仓库
  2. 点击3个点,点击远程,添加远程数据
  • 输入git地址,再输入远程项目名称
  • 制作.gitignore文件
  • 提交/发布

六、打包问题

一般运行后,会缺少一些系统文件,

  • 建立一个新的文件夹,在out文件夹里,名字是档期项目文件夹名称+当前时间
  • 拷贝生成的exe文件到目录下
  • 运行windeployqt.exe,获得打包依赖的文件
  • 可以再删除一些不需要的文件
  • 现在做成bat文件
bash 复制代码
@echo off
for %%a in ("%~dp0.") do set "foldername=%%~nxa"
if not exist "out" mkdir out
set "dirname=out\%foldername%_%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%"
set "dirname=%dirname: =0%"
if not exist "%dirname%" mkdir "%dirname%"
copy build\Desktop_Qt_6_11_0_MinGW_64_bit-Release\%foldername%.exe "%dirname%\" /Y
D:\Qt\6.11.0\mingw_64\bin\windeployqt.exe "%dirname%\%foldername%.exe"
if exist "%dirname%\translations" rmdir /s /q "%dirname%\translations"
相关推荐
余额瞒着我当琳2 小时前
C++--深拷贝三件套 + swap + 写时拷贝 + vector 扩容 + reserve
java·开发语言·c++
坐吃山猪2 小时前
WebClient内存配置解析
开发语言·springboot·webflux
jdksjw3 小时前
同步与异步、阻塞与非阻塞、多线程、协程超详细讲解(Python并发编程从入门到精通)
开发语言·python
Zach_菠萝侠3 小时前
【DeepSeek Harness 研究】进化方向4:安全加固 思考、设计与实现
开发语言·安全·deepseek
SL-staff3 小时前
技术实践:HR如何用JVS-Logic可视化编排实现考勤数据同步(含节点配置与异常处理)
开发语言·python·低代码·钉钉·可视化编排·jvs-logic·hr技术
SomeB1oody4 小时前
【RustyML入门】6.0. 数学工具
开发语言·后端·机器学习·rust·教程
进制树5 小时前
【飞控开发实战·⑲】ROS2无人机开发环境搭建:Jazzy安装、工作空间与hello_drone节点实战
开发语言·安全·无人机·课程设计
牛马也想出海5 小时前
亚马逊爬虫代理IP:IP类型选择与配置指南
开发语言·php
菜冻鱼5 小时前
Python-pytorch-高级技巧
开发语言·人工智能·pytorch·python·深度学习·神经网络·聚类
lpfasd1235 小时前
python webview打包版卡死、开发版正常
开发语言·python