如何为Visual Studio 2010构建Qt

hyp*_*not 136 c++ qt build visual-studio-2010 visual-studio

我努力寻找一种方法,为使用Qt和Visual Studio 2010提供稳定的解决方案,因此在收集了所有信息和一些反复试验后,我想将我的解决方案写入指南.

问题,或者为什么不能使用预构建的二进制文件?

似乎使用为Visual Studio 2008构建的二进制文件可能在某些特殊情况下工作,但我发现它们无法工作.在我的情况下,他们编译好,但他们产生运行时错误,如下所示:

problem2

或者从Visual Studio 2010启动时:

问题

更新:我发现一篇博客文章分析了为什么它适用于某些人,而不适用于其他人.总之,这取决于您是否在同一台计算机上安装了Visual Studio 2008. http://blog.paulnettleship.com/2010/11/11/troubleshooting-visual-studio-2010-and-qt-4-7-integration/

最重要的是(我愚蠢地没有意识到),如果你没有安装Visual Studio 2008,你就不能使用Visual Studio 2008编译的库和dll(可在Qt网页上找到).原因是你下载的Qt SDK是一个调试版本,它依赖于VC9.0 DebugCRT,这意味着它需要安装Visual C++ 2008 Debug Runtime,它不能作为可再发行的安装程序使用.安装DebugCRT的唯一方法是安装整个Visual Studio 2008.

hyp*_*not 142

首先,了解在Visual Studio 2010中使用Qt非常重要,不可能使用为Visual Studio 2008制作的预构建二进制文件,但必须从源代码编译它.

正在下载Qt

https://www.qt.io/download/

2017年更新:最新的Qt 4.x分支(Qt 4.8.6)有2个预先构建的软件包,现在位于归档部分:

  1. http://download.qt.io/archive/qt/4.8/4.8.6/qt-opensource-windows-x86-vs2010-4.8.6.exe
  2. http://download.qt.io/archive/qt/4.8/4.8.6/qt-opensource-windows-x86-vs2008-4.8.6.exe

您不应该通过单击"Qt libraries 4.8.6 for Windows(Visual Studio 2008,218 MB)"下载Qt ,而是单击其上方的"zip"链接.

链接选择

在该链接上,您将获得一个大型zip文件,如"qt-everywhere-opensource-src-4.8.6.zip".将其解压缩到一个文件夹中,使其路径变得美观小巧,例如"E:\ Qt"

Visual Studio命令提示符

现在我们有了源代码,我们需要构建二进制文件.要做到这一点,Microsoft Visual Studio 2010\Visual Studio Tools\Visual Studio Command Prompt (2010)从开始菜单打开链接,甚至将其固定到任务栏(一个好主意).这是一个特殊的命令提示符,其中包含用于使用Visual Studio 2010工具进行构建的所有变量.

进入命令提示符后,使用旧式DOS方式导航到提取的Qt文件夹,这意味着您必须更改驱动器号E:,输入目录cd Qt并列出目录内容dir.您可以使用Tab键来帮助您使用目录名称.当您到达正确的目录时,dir命令应该返回这样的内容.

命令行

建立Qt

现在是配置和构建的时候了.为了配置极简主义的Qt,我使用以下标志configure.exe.只需将其复制并粘贴到命令行即可.在Qt参考手册中查看要使用或不使用的标志.

configure.exe -release -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-qt3support -no-multimedia -no-ltcg
Run Code Online (Sandbox Code Playgroud)

一旦configure.exe完成(对我来说是10分钟),你需要开始构建过程.使用上述标志需要大约20-30分钟.要启动它,只需键入:

nmake
Run Code Online (Sandbox Code Playgroud)

设置环境变量

基本上,我们已经完成了.您需要做的就是设置环境变量(QTDIRPATH),告诉程序在哪里找到Qt.如果您使用的是Windows 7,则可以使用以下命令设置QTDIR安装目录.

setx QTDIR e:\Qt
Run Code Online (Sandbox Code Playgroud)

为了设置PATH,我强烈建议使用路径编辑器.在路径编辑器中

add the directory of Qt\bin to your PATH
Run Code Online (Sandbox Code Playgroud)

(如果它在系统路径或用户路径中无关紧要)

如果您更喜欢使用Control Panel\System\Environment Variables,那么您也可以在那里设置它们.

Qt Visual Studio加载项

注销登录或重新启动后,所有Qt演示应用程序应该正确启动(我建议看一下bin\qtdemo.exe).现在,您可以从Qt下载页面下载并安装Visual Studio加载项(qt-vs-addin-1.1.9.exe),它将完美运行.

加入

附录A:官方说明:

在Qt网站的官方维基上有一个名为Qt 4.8安装Qt for Windows的页面,但我发现它缺少重要信息.

参考

Qt DevNet论坛
推荐的简约Qt构建标志
使用Visual C++ 2010构建Qt 4.5
如何将Qt编译为静态
Qt 4.8:为Qt配置选项

Windows中编辑PATH环境变量而不痛苦 - op111.net

  • 只有一个问题:为什么Qt还没有提供VS 2010预编译版? (10认同)
  • 这很好,但是如果您不希望自定义Qt助手出现问题,我会在配置标志中添加-qt-sql-sqlite.好像它需要这个插件才能成功读取文档数据库. (2认同)
  • 还有一点需要注意:如果QT源所在文件夹的路径中有一些空格,VS工具会拒绝构建QT.至少它在我的情况下. (2认同)
  • 只是告诉你们.原帖中的链接不再起作用.搜索digia网站并发现插件甚至不存在需要很长时间.必须遵循的主要链接是:http://qt-project.org/downloads (2认同)

par*_*y72 25

Qt V4.8.0包含Visual Studio 2010的预构建二进制文件,因此您不再需要这样做:http: //qt.nokia.com/downloads/windows-cpp-vs2010

  • parsley 72 Visual Studio 2010的预构建二进制文件仅在您计划在32位调试模式下工作时才有用,否则zsero发布的指南非常有用,特别是如果希望更改有关体系结构的选项. (2认同)