写在前面 :
寻找这个打包方法的起因是我用Qt写一个大作业,为了能把程序打包好,从ChatGPT和网上找了不少的内容, 花了差不多一天的时间才打包完成 , 下面的是打包过程中顺便用Obsidian记的一些
打包完成后,你可以将程序发到你同学的电脑上, 这样在他们的电脑上即可执行你写的程序。
我使用的Visual Studio是Visual Studio 2019以及对应下载的QT VS Tools 的扩展连接Qt 进行桌面应用程序(Qt Widgets Application) 进行开发的,另外在项目中,也引用了第三方库(Eigen, Boost, CGAL), 所以打包起来会比较麻烦。
另外也说明一下,我也看过使用Visual Studio Installer打包Visual Studio程序为exe文件, 不过因为我的第三方库比较多,并且有Qt依赖, 所以就没有用直接加入源文件的方法。
具体来说其实是直接使用Visual Studio里面的Release的功能进行打包的。
首先说明一下, Qt 6.5.0 中, 安装打包程序会发生错误, 我到网上查了一下,这个是6.5.0版本的内部原因, 如果您使用的是6.5.0版本, 请卸载后重装6.5.1版本进行打包程序
打包步骤
要将Visual Studio 2019中的带有Qt扩展的项目打包为可执行文件.exe文件,需要遵循以下步骤:
-
在Visual Studio中,在解决方案资源管理器中,右键单击项目,然后选择“属性”。在“配置”下拉菜单中,选择“Release”。
-
确保项目已正确配置,包括附加的包含路径和库。在项目属性中,转到“C/C++”->“General”,并检查“附加包含目录”是否包含了Qt头文件和第三方库的路径。然后转到“Linker”->“General”,检查“附加库目录”是否包含了Qt库和第三方库的路径(需要包含你使用的第三方库的include和lib路径,并且程序能够正常运行。如果是用NuGet配置的库,则跳过) (这个步骤如果你的程序能正常运行并且没有绝对路径包含项,那么一般来说你已经做好了)
-
使用windeployqt将Project的属性中的Qt Project Settings 里面的 Run Deployment 选成Yes (默认是No) 即可(下面图里面的Run Deployment Tool选项要改成Yes)
- 注: 为了保证windeployqt正常运行,需要将
E:\Qt\6.5.1\msvc2019_64\bin
添加到系统环境变量Path中, 对应的windeployqt 工具才有效
另外加上如何测试项目的windeployqt是否成功: 先Build一下解决方案,然后在项目的 x64/Debug 或者Release文件夹下面(如果没有按照4更改, 就是Debug文件夹)你会找到.exe文件, 此时, 在对应的文件夹里面
windeployqt FriskFEM.exe // FriskFEM换成你的可执行文件exe
如果没有报什么错,说明基本没问题了,如果是没有找到windeployqt, 请按照上述说明先配置路径,如果是异常终止了, 那么你的Qt可能是6.5.0版本,请卸载重装6.5.1版本进行打包。
- 然后右击解决方案, 在配置框中选择Configuration Properties, 然后打开右上角的 Configuration Properties, 此时你的Configuration Manager可能还是Debug, 此时请确保将你的程序设置为Release (都要求是Release), 如下图所示
另外需要说明的是,如果你是卸载重装Qt之后,项目整体配置转换成Release之后可能会发现项目找不到Qt的问题,请在Project -> Properties -> Qt Install ation 重新选取你需要的Qt版本。
- 选择项目的输出目录:
在项目配置(Project-> Properties) ->Qt Deploy Tool -> Debug/Release Binaries 中,将对应的选项更改为Release
- 再次构建项目。在解决方案资源管理器中,右键单击项目,然后选择“Build Solution”。
然后你就会在项目(一般是和.sln文件相同路径下)的 x64文件夹中,会出现Release路径
打开Release文件夹,项目如图所示:
注意里面的部分是Qt6Gui和Qt6Widgets.dll等等,如果是Qt6Guid, 那么是上面一步的Debug/Release Binaries 没有设置好
接下来就打包成功了,此时你就可以直接将Release 文件夹压缩之后发给其他人,程序就可以在他人的电脑上运行了。文章来源:https://www.toymoban.com/news/detail-764933.html
虽然这一期也依旧挺水的(加上此时也是考试周), 实际上为了程勋能够正常运行,作者在包括室友和其他同学的电脑上测试过七八次才成功运行的,程序调试不易, 如果这个文章对你有帮助, 还是希望能给这篇文章点个赞再走吧!文章来源地址https://www.toymoban.com/news/detail-764933.html
到了这里,关于Visual Studio 打包源文件为可执行.exe程序(带有Qt Tool和第三方库)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!