Qt 高级开发 005: Qt Creator与Visual Studio 项目双向转换

Qt 高级开发 005: Qt Creator与Visual Studio 项目双向转换

  • [Bilibili 同步视频](#Bilibili 同步视频)
  • [🔧 一、Qt Creator 项目 → Visual Studio 项目](#🔧 一、Qt Creator 项目 → Visual Studio 项目)
    • [1. 环境前置:把 qmake 加入系统 Path](#1. 环境前置:把 qmake 加入系统 Path)
    • [2. 执行转换命令](#2. 执行转换命令)
    • [3. 编译器冲突?1 步修复](#3. 编译器冲突?1 步修复)
    • [4. VS 内完善 Qt 配置](#4. VS 内完善 Qt 配置)
    • [5. 运行 + 清理冗余文件](#5. 运行 + 清理冗余文件)
  • [📌 二、Visual Studio Qt 项目 → Qt Creator 项目](#📌 二、Visual Studio Qt 项目 → Qt Creator 项目)
    • [1. 一键生成配置文件](#1. 一键生成配置文件)
    • [2. 修复运行报错(关键!)](#2. 修复运行报错(关键!))
  • [💡 三、转换小总结](#💡 三、转换小总结)

Bilibili 同步视频

Qt 高级开发 005: Qt Creator与Visual Studio 项目双向转换

在 Qt 开发的日常 workflow 里,Qt Creator 与 Visual Studio 往往是并肩作战的黄金搭档~ 但项目格式不互通、编译环境冲突、转换后无法运行......这些小坑真的很磨心态!💦

今天就把双向转换的完整流程一次性讲透,从环境配置、命令执行、报错修复到最终运行,一步不落地保姆级教程,看完直接无痛切换开发工具!🚀


🔧 一、Qt Creator 项目 → Visual Studio 项目

想要把 Qt Creator 里的 .pro 工程,顺滑转成 VS 可打开的 .vcxproj,只需要 4 步,稳得很!

1. 环境前置:把 qmake 加入系统 Path

  • 32 位项目:添加 Qt5.xMSVC2019bin

  • 64 位项目:添加 Qt5.xMSVC2019_64bin

配置路径:此电脑 → 右键 → 属性 → 高级系统设置 → 环境变量 → 系统 Path → 新建 → 粘贴路径 → 全部确定

2. 执行转换命令

.pro 文件所在目录打开 CMD,输入:

Bash 复制代码
qmake -tp VC 你的项目名.pro

执行后,自动生成 VS 可识别的工程文件 ✅

3. 编译器冲突?1 步修复

首次转换大概率报 CL.exe 编译器冲突,别慌!

  • 找到 VS 安装目录下的 CL.exe(32 位选 x86 路径)

  • 把该路径同样添加到系统 Path

重启 CMD 再执行转换命令,完美解决!

4. VS 内完善 Qt 配置

用 VS 打开生成的 .vcxproj,会发现缺少 Qt 项目设置

  • 右键项目 → 属性 → Qt → 选择 convert custom build deep to a Qt MFC build

  • 等待 3~4 秒(代码量大稍等),属性面板立刻出现 Qt 配置!

5. 运行 + 清理冗余文件

  • 点击「本地调试器」,项目直接跑起来,断点调试完全正常 ✔️

  • 自动生成的 MOC 冗余文件:可直接删除,或清理解决方案后自动消失


📌 二、Visual Studio Qt 项目 → Qt Creator 项目

反过来把 VS 工程转回 Qt Creator,同样超简单,只补一个小配置!

1. 一键生成配置文件

在 VS 的 Qt 插件中,点击:

Plain 复制代码
create basic profile

自动生成 .prj + .pro 双配置文件,工程结构直接对齐 Qt Creator!

2. 修复运行报错(关键!)

直接运行大概率提示 找不到 UI / 核心模块缺失

原因:自动生成的 .pro少了 3 个核心依赖

.pro 中添加:

Plain 复制代码
QT += core gui widgets

保存后重新构建,程序丝滑运行~ 🎉


💡 三、转换小总结

✅ Qt Creator → VS:配 qmake → 执行命令 → 修 CL 冲突 → 补 Qt 配置

✅ VS → Qt Creator:生成 profile → 补 core/gui/widgets → 直接运行

两套工具随便切,项目格式不打架,开发效率直接拉满!💯

以后不管是团队协作、工具切换还是环境迁移,都不用再被项目转换卡住啦~ 收藏这篇,用到直接翻!

相关推荐
用户昵称10027 分钟前
C/C++编程-工程实践-本地存储log的工程意义
c语言·开发语言
吹什么轩2 小时前
c++复习:map和set的使用
开发语言·c++
必须得开心呀2 小时前
qt生成dump文件并定位异常
开发语言·qt
fpcc2 小时前
跟我学C++中级篇—内存流
开发语言·c++
Cicada1282 小时前
ccvt:一个用 Rust 写的中国地图坐标系互转命令行工具
开发语言·后端·rust
1001101_QIA2 小时前
工控机网络配置
开发语言·数据库·php
程序员雷欧3 小时前
ThreadPoolExecutor 深度解析:从核心参数到源码实现的全面剖析
java·开发语言·jvm
catchadmin3 小时前
对标 npx 的 CPX PHP 的 Composer 包执行器
开发语言·php·composer
一位狮子座的程序员3 小时前
如何用RAG解决AI智能体的知识盲区?
开发语言·c#