windows使用命令行bat编译qt5【完整版,即开即用版】

网络上的东西真难找到全的,断续摸索了半天,终于实现了。

为什么要命令行呢,主要是子工程有10几个,然后subdirs不能好好的管理输出、拷贝dll/h问题,所以最终还是采用命令行方式来,事实证明这个一次搞完以后,以后最省事。

我这里直接发解决方案,共2个bat文件。

1、在 pro 目录,使用如下bat初始化环境,包括qt和vc的

@echo off
echo 设置qt环境
set PATH=D:\Qt\Qt5.14.1\5.14.1\msvc2017\bin;D:\Qt\Qt5.14.1\Tools\QtCreator\bin\;%PATH%
rem cd /D D:\Qt\Qt5.14.1\5.14.1\msvc2017
echo 设置vc环境vcvarsall.bat
@cmd /k call "d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x86 %*

2、然后在上一个bat打开的cmd窗口中,直接调用下面编译的bat即可

@echo off

rem 输出总目录
set BUILD_DIR=./build

rem 版本,带任意参数就是release,否则默认为debug版本
if "%1"=="" (
@echo 正在构建 Debug 版本。。。
set DEBUG_OR_RLS=Debug
) else (
@echo 正在构建 Release 版本。。。
set DEBUG_OR_RLS=Release
)

qmake AppLib1.pro -spec win32-msvc "CONFIG+=debug" "CONFIG+=qml_debug" -o %BUILD_DIR%/Makefile
set "err=%errorlevel%"
if "%err%"=="0" (
echo qmake成功了
) else (
echo qmake失败!
goto nowExit
)

rem 进到build目录直接使用nmake debug即可,否则使用 /f Makefile形式
cd %BUILD_DIR%
rem nmake /f ./build/Makefile qmake_all
nmake %DEBUG_OR_RLS%
set "err=%errorlevel%"
if "%err%"=="0" (
echo nmake成功了
) else (
echo nmake失败!
goto nowExit
)

:nowExit
cd ..


五码高清照:

LYJ博客

本文为3YL原创,转载无需联系,但请注明来自labisart.com。

原创文章不易,如果觉得有帮助,可打赏或点击右侧广告支持:

查看打赏记录

发表评论请遵守党国法律!后台审核后方可显示!
  • 最新评论
  • 总共0条评论
  • Blog v1.1© 2024 labisart.com 版权所有 | 联系:labartwork@163.com