我很难找到一个方法来为在 Visual Studio 2010 中使用 Qt 提供稳定的解决方案,因此在收集了所有信息和一些尝试和错误之后,我想将我的解决方案写成指南。
似乎使用为 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/
The most important thing (that I stupidly didn’t realize) was the fact that you CANNOT use the Visual Studio 2008 compiled libraries and dll’s (available on the Qt webpage) if you don’t have Visual Studio 2008 installed. The reason is because the Qt SDK you download is a debug build which is dependant on the VC9.0 DebugCRT, meaning it needs the Visual C++ 2008 Debug Runtime installed, which is NOT available as a redistributable installer. The only way to install the DebugCRT is to install the entirety of Visual Studio 2008.
最佳答案
首先,了解在 Visual Studio 2010 中使用 Qt 时,不能使用为 Visual Studio 2008 制作的预构建二进制文件,这一点非常重要,但您必须从源代码编译它。
开启 https://www.qt.io/download/
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" 现在我们有了源代码,我们需要构建二进制文件。为此,请打开 在命令提示符下,使用老式 DOS 方式导航到解压缩的 Qt 文件夹,这意味着您必须通过 现在是配置和构建的时候了。为了配置一个极简的 Qt,我使用了以下标志和 一次 基本上,我们完成了。您需要做的就是设置环境变量( 用于设置 (不管是系统路径还是用户路径) 如果您更喜欢使用 在这里,在注销登录或重新启动后,所有 Qt 演示应用程序都应该正确启动(我建议查看 bin\qtdemo.exe)。现在您可以从 Qt 下载页面下载并安装 Visual Studio 插件(qt-vs-addin-1.1.9.exe),它可以完美运行。 在 Qt 网站的官方 wiki 上有一个页面,名为 Qt 4.8 Installing Qt for Windows ,但我发现它缺少重要信息。 Qt DevNet forums
Visual Studio 命令提示符
Microsoft Visual Studio 2010\Visual Studio Tools\Visual Studio Command Prompt (2010)从您的开始菜单链接,甚至将其固定到任务栏(一个好主意)。这是一个特殊的命令提示符,其中设置了使用 Visual Studio 2010 工具构建的所有变量。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 Visual Studio 插件
附录 A:官方说明:
引用文献
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
关于c++ - 如何为 Visual Studio 2010 构建 Qt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5601950/
我刚刚为fedora安装了emacs。我想用emacs编写ruby。为ruby提供代码提示、代码完成类型功能所需的工具、扩展是什么? 最佳答案 ruby-mode已经包含在Emacs23之后的版本中。不过,它也可以通过ELPA获得。您可能感兴趣的其他一些事情是集成RVM、feature-mode(Cucumber)、rspec-mode、ruby-electric、inf-ruby、rinari(用于Rails)等。这是我当前用于Ruby开发的Emacs配置:https://github.com/citizen428/emacs
我的瘦服务器配置了nginx,我的ROR应用程序正在它们上运行。在我发布代码更新时运行thinrestart会给我的应用程序带来一些停机时间。我试图弄清楚如何优雅地重启正在运行的Thin实例,但找不到好的解决方案。有没有人能做到这一点? 最佳答案 #Restartjustthethinserverdescribedbythatconfigsudothin-C/etc/thin/mysite.ymlrestartNginx将继续运行并代理请求。如果您将Nginx设置为使用多个上游服务器,例如server{listen80;server
在编写Ruby(客户端脚本)时,我看到了三种构建更长字符串的方法,包括行尾,所有这些对我来说“闻起来”有点难看。有没有更干净、更好的方法?变量递增。ifrender_quote?quote="NowthatthereistheTec-9,acrappyspraygunfromSouthMiami."quote+="ThisgunisadvertisedasthemostpopularguninAmericancrime.Doyoubelievethatshit?"quote+="Itactuallysaysthatinthelittlebookthatcomeswithit:themo
如何将send与+=一起使用?a=20;a.send"+=",10undefinedmethod`+='for20:Fixnuma=20;a+=10=>30 最佳答案 恐怕你不能。+=不是方法,而是语法糖。参见http://www.ruby-doc.org/docs/ProgrammingRuby/html/tut_expressions.html它说Incommonwithmanyotherlanguages,Rubyhasasyntacticshortcut:a=a+2maybewrittenasa+=2.你能做的最好的事情是:
在前面两节的例子中,主界面窗口的尺寸和标签控件显示的矩形区域等,都是用C++代码编写的。窗口和控件的尺寸都是预估的,控件如果多起来,那就不好估计每个控件合适的位置和大小了。用C++代码编写图形界面的问题就是不直观,因此Qt项目开发了专门的可视化图形界面编辑器——QtDesigner(Qt设计师)。通过QtDesigner就可以很方便地创建图形界面文件*.ui,然后将ui文件应用到源代码里面,做到“所见即所得”,大大方便了图形界面的设计。本节就演示一下QtDesigner的简单使用,学习拖拽控件和设置控件属性,并将ui文件应用到Qt程序代码里。使用QtDesigner设计界面在开始菜单中找到「Q
我对如何计算通过{%assignvar=0%}赋值的变量加一完全感到困惑。这应该是最简单的任务。到目前为止,这是我尝试过的:{%assignamount=0%}{%forvariantinproduct.variants%}{%assignamount=amount+1%}{%endfor%}Amount:{{amount}}结果总是0。也许我忽略了一些明显的东西。也许有更好的方法。我想要存档的只是获取运行的迭代次数。 最佳答案 因为{{incrementamount}}将输出您的变量值并且不会影响{%assign%}定义的变量,我
我正在尝试在配备ARMv7处理器的SynologyDS215j上安装ruby2.2.4或2.3.0。我用了optware-ng安装gcc、make、openssl、openssl-dev和zlib。我根据README中的说明安装了rbenv(版本1.0.0-19-g29b4da7)和ruby-build插件。.这些是随optware-ng安装的软件包及其版本binutils-2.25.1-1gcc-5.3.0-6gconv-modules-2.21-3glibc-opt-2.21-4libc-dev-2.21-1libgmp-6.0.0a-1libmpc-1.0.2-1libm
我使用rails3.1+rspec和factorygirl。我对必填字段(validates_presence_of)的验证工作正常。我如何让测试将该事实用作“成功”而不是“失败”规范是:describe"Addanindustrywithnoname"docontext"Unabletocreatearecordwhenthenameisblank"dosubjectdoind=Factory.create(:industry_name_blank)endit{shouldbe_invalid}endend但是我失败了:Failures:1)Addanindustrywithnona
我有一个数组数组,想将元素附加到子数组。+=做我想做的,但我想了解为什么push不做。我期望的行为(并与+=一起工作):b=Array.new(3,[])b[0]+=["apple"]b[1]+=["orange"]b[2]+=["frog"]b=>[["苹果"],["橙子"],["Frog"]]通过推送,我将推送的元素附加到每个子数组(为什么?):a=Array.new(3,[])a[0].push("apple")a[1].push("orange")a[2].push("frog")a=>[[“苹果”、“橙子”、“Frog”]、[“苹果”、“橙子”、“Frog”]、[“苹果”、“
我一直在玩一个脚本,它在Chrome中获取选定的文本并在Google中查找它,提供四个最佳选择,然后粘贴相关链接。它以不同的格式粘贴,具体取决于当前在Chrome中打开的页面-DokuWiki打开的DokuWiki格式,普通网站的HTML,我想要我的WordPress所见即所得编辑器的富文本。我尝试使用pbpaste-Preferrtf来查看没有其他样式的富文本链接在粘贴板上的样子,但它仍然输出纯文本。在文本编辑中保存文件并进行试验后,我想出了以下内容text=%q|{\rtf1{\field{\*\fldinst{HYPERLINK"URL"}}{\fldrsltTEXT}}}|te