我努力寻找一种方法,为使用Qt和Visual Studio 2010提供稳定的解决方案,因此在收集了所有信息和一些反复试验后,我想将我的解决方案写入指南。
似乎使用为Visual Studio 2008构建的二进制文件可能在某些特殊情况下工作,但我发现它们无法工作。在我的情况下,他们编译好,但他们产生运行时错误,如下所示:
或从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。
答案 0 :(得分:138)
首先,了解在Visual Studio 2010中使用Qt非常重要,不可能使用为Visual Studio 2008制作的预构建二进制文件,但是你必须从源代码编译。
更新2017:最新的Qt 4.x分支(Qt 4.8.6)有2个预先构建的软件包,现在位于归档部分:
您不应该通过单击“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”
现在我们有了源代码,我们需要构建二进制文件。要做到这一点,请从开始菜单打开Microsoft Visual Studio 2010\Visual Studio Tools\Visual Studio Command Prompt (2010)
链接,甚至将其固定到任务栏(一个好主意)。这是一个特殊的命令提示符,其中包含使用Visual Studio 2010工具进行构建的所有变量。
在命令提示符下,使用旧式DOS方式导航到解压缩的Qt文件夹,这意味着您必须按E:
更改驱动器号,按cd Qt
输入目录并列出目录内容dir
。您可以使用Tab键来帮助您使用目录名称。当您到达正确的目录时,dir
命令应返回类似的内容。
现在是配置和构建的时候了。为了配置极简主义的Qt,我在configure.exe
使用以下标志。只需将其复制并粘贴到命令行即可。在Qt reference manual中查找要使用或不使用的标志。
configure.exe -release -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-qt3support -no-multimedia -no-ltcg
configure.exe
完成后(对我来说是10分钟),您需要开始构建过程。使用上述标志需要大约20-30分钟。要启动它,只需输入:
nmake
基本上,我们已经完成了。您需要做的就是设置环境变量(QTDIR
和PATH
),它们告诉程序在哪里可以找到Qt。如果您使用的是Windows 7,则可以使用以下命令将QTDIR
设置为安装目录。
setx QTDIR e:\Qt
要设置PATH
,我强烈建议您使用Path Editor。在路径编辑器中
add the directory of Qt\bin to your PATH
(如果它在系统路径或用户路径中无关紧要)
如果您更喜欢使用Control Panel\System\Environment Variables
,那么您也可以在那里设置它们。
在您注销登录或重启后,所有Qt演示应用程序应该正确启动(我建议您查看 bin \ qtdemo.exe )。现在,您可以从Qt下载页面下载并安装Visual Studio加载项(qt-vs-addin-1.1.9.exe),它将完美运行。
在Qt网站的官方维基上有一个名为Qt 4.8 Installing Qt for Windows的页面,但我发现它缺少重要信息。
Qt DevNet forums
Recommended flags for a minimalistic Qt build
Building Qt 4.5 with Visual C++ 2010
How to compile Qt as static
Qt 4.8: Configure options for Qt
Edit the PATH environment variable in
Windows without pain - op111.net
答案 1 :(得分:23)
Qt V4.8.0包含Visual Studio 2010的预构建二进制文件,因此您不再需要这样做: http://qt.nokia.com/downloads/windows-cpp-vs2010
答案 2 :(得分:1)