如何在没有官方支持的情况下使用 Visual Studio 2015 构建 Qt 4.8.6?
Posted
技术标签:
【中文标题】如何在没有官方支持的情况下使用 Visual Studio 2015 构建 Qt 4.8.6?【英文标题】:How to build Qt 4.8.6 with Visual Studio 2015 without official support? 【发布时间】:2015-09-29 16:15:03 【问题描述】:目前(2015 年 9 月)没有针对 Visual Studio 2015 的官方 Qt 构建。如何手动构建?
【问题讨论】:
【参考方案1】:它可以很容易地手动构建。以下示例适用于 Qt 4.8.6。
下载 Qt 4.8.6 源代码: http://download.qt.io/archive/qt/4.8/4.8.6/qt-everywhere-opensource-src-4.8.6.zip 并打开包装。让 Qt 前缀为 c:\Qt-2015\4.8.6\msvc2015。将下载的源目录中的源复制到 prefix dir。
应用补丁 02-fix_build_with_msvc2015-45e8f4ee.diff https://drive.google.com/file/d/0Bz6Oefew6XZnOU9ac0hIeG41UVE/view?usp=sharing 见帖子:https://forum.qt.io/topic/56453/compiling-qt4-head-with-msvc-2015-cstdint-errors/5 摆脱编译错误 (我手动应用了所有更改,时间不长)。
在 mkspecs 目录中创建新的 win32-msvc2015 规范: 创建win32-msvc2015目录,复制win32-msvc2013目录的内容, 编辑 qmake.conf:将 _MSC_VER 设置为 1900 并在适当的情况下更新 2013 至 2015 的所有文本:
在 prefix dir/qmake/ 目录中编辑 makefile.win32 文件: 找到所有出现的 win32-msvc2013 并类似地添加 win32-msvc2015:
现在来自 Visual Studio 2015 命令提示符
运行(这些是示例命令,其他命令可能会根据构建需要而有所不同):
configure -make nmake -platform win32-msvc2015 -prefix c:\Qt-2015\4.8.6\msvc2015 -opensource -confirm-license -opengl desktop -nomake examples -nomake tests
选项 -make nmake 需要,因为configure.exe默认搜索nmake的最大版本vs 2013,否则它使用make。
然后是单核构建命令
nmake
(或 jom.exe -jN,其中 N
就是这样。这个例子没有 Webkit、例子和演示——为了速度。 对我来说,在单核上构建大约需要 1.5 小时。
【讨论】:
这是 trigger 的附加信息 回答:您可以从QT download 下载 QT 4.8 的最新版本(目前是 4.8.7)。这个版本支持VS 2015,所以你不需要从trigger answer执行步骤3和4。 注意使用 Python 在 Windows 上自动应用差异:pip install patch
python -m patch
然后,导航到站点包目录(例如:C:\Python27\lib\site-packages\ ) 并找到patch.py 将此文件复制到qt 根目录(例如:C:\qt\qt4.8.7)然后在命令行运行:patch.py 02-fix_build_with_msvc2015-45e8f4ee.diff
然后您可以从qt 中删除diff 和patch.py 文件目录并编译。
另外,最新版本的qt4.8.7,他们已经完成了win32-msvc2015的设置工作,所以你可以跳过步骤3和4。
大家,编译后不要忘记nmake install
。
我使用以下链接(与这篇 SO 文章)使用 Visual Studio 2017 构建 Qt 4.8.7:github.com/sandym/qt-patches/tree/master/windows/qt-4.8.7以上是关于如何在没有官方支持的情况下使用 Visual Studio 2015 构建 Qt 4.8.6?的主要内容,如果未能解决你的问题,请参考以下文章
Wcf 测试客户端如何在没有 Visual Studio 的情况下使用?
如何在 Visual Studio 2017 中使用 Qt 库?