如何在visual studio中从命令行构建qt项目
How to build a QT-project in visual studio from command line
我正在尝试为我的一个qt项目自动化构建过程。我在非qt项目的批处理文件中使用了以下命令
"C:Program Files (x86)Microsoft Visual Studio 9.0Common7IDEdevenv.exe" "myproject. exe"sln"/build "Debug|x64"/projectconfig Debug
,但它不是为我的QT项目工作。我错过什么了吗?
这里有一个例子,如何做到这一点(命令一个命令):
"C:Program Files (x86)Microsoft Visual Studio 9.0VCvcvarsall.bat" x86
cd <my_project_directory>
qmake
nmake
第一个命令设置使用Visual Studio工具的环境。第二个命令将当前目录更改为Qt项目文件所在的目录(您必须有一个)。第三个命令运行Qt的qmake.exe工具来生成make文件。最后,nmake
将构建您的项目。
然而,如果你不使用Qt项目文件,只有VisualStudio解决方案,你可以使用MSBuild
实用程序,如:
"C:Program Files (x86)Microsoft Visual Studio 9.0VCvcvarsall.bat" x86
MSBuild your_solution.sln /p:Configuration=Debug
您还可以设置额外的环境变量,如QTDIR
,如果它没有找到您的Qt安装
如果有人发现这个问题正在寻找关于如何自动化QT项目的构建过程的答案,并希望使用批处理文件作为原始问题状态来完成它,这里是我用来自动化构建过程的批处理脚本:
@echo off
call "C:Program Files (x86)Microsoft Visual Studio2019CommunityVCAuxiliaryBuildvcvarsall.bat" x86
cd %path_to_your_repo%
nmake /f Makefile.Release clean && qmake.exe %path_to_your_.pro% -spec win32-msvc "CONFIG+=qtquickcompiler"
nmake qmake_all
nmake -f Makefile.Release
首先调用vcvarsall.bat
很重要,因为这将为所有visual studio工具设置环境。还要确保使用call
启动它,如果您只是像@vahancho的回答那样启动批处理文件,它将在执行vcvarsall.bat
后停止脚本。
清洁步骤不是必需的,但在构建之前使用它是一个很好的实践。
在qmake
步骤中选择-spec
和CONFIG
(如果有的话)是很重要的,因为如果您正在使用一些额外的QT配置,这将允许您选择编译器和所需的配置。
- 更改命令行 qt5 源代码构建配置的正确/快速方法
- Visual Studio 2019:使用 vcvars64 从命令行构建C++.bat不再工作
- 尝试构建 xerces c++ 解析器。Netbeans 和命令行构建错误未定义对"xercesc_3_2..."的引用
- 在基于命令行的QT插件构建中包含库
- 无法构建 quazip。MOC 编译器不会运行。命令行未找到相关类
- 从命令行构建一个.sln / .vcxproj项目,并使用Visual C 的免费版本构建
- 在构建过程中捕获所有编译器调用和命令行参数
- 如何通过命令行使用MSBUILD VS2015构建所有配置
- CMake & Visual Studio:如何获得快速、安静的命令行构建?
- 使用命令行构建一个Visual Studio C 项目
- QT 5.12.1使用Visual Studio2017,由命令行构建
- 仅在从命令行构建Qt项目时出错
- 从命令行构建Visual Studio Express 11项目
- 我可以从命令行构建MFC应用程序吗
- 从命令行构建x64 C++项目说:此操作应该只在UI线程上进行
- 从命令行构建Visual Studio 2008解决方案
- 如何在visual studio中从命令行构建qt项目
- 为什么使用clang的两阶段命令行构建不能生成dSYM目录?
- Visual Studio 2015社区命令行构建c++项目不工作
- Coverity:基本c++代码的命令行构建脚本