Qt - Visual Studio 2013加载项将无法编译项目

时间:2014-08-24 22:45:47

标签: c++ qt visual-studio-2013 add-in

我已经从他们的网站安装了这些文件:

  • Qt 5.3.1 for Windows 64-bit(VS 2013,OpenGL,571 MB)
  • 适用于Qt5的Visual Studio加载项1.2.3

之后,我尝试按照这个简单的tutorial但是当我尝试实际构建生成的项目时,它在链接说"错误LNK1112:模块机器类型' X86'与目标机器类型冲突' x64'"。我完全按照教程中的人说,将Target Machine更改为Machine64并将平台设置为x64。如果我尝试将其构建为Win32,则会弹出以下消息框:

enter image description here

我已经设置了#t; Qt版本" C:\Qt\Qt5.3.1\5.3\msvc2013_64_opengl的路径。也许那是什么困扰链接器?另外,我在解决方案中有三个项目 - 其中两个是x86,Qt一个是x64。

更新:在Qt Creator中一切正常。

更新2: Qt项目的vcxproj.user文件:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <ShowAllFiles>true</ShowAllFiles>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    <QTDIR>C:\Qt\Qt5.3.1\5.3\msvc2013_64_opengl</QTDIR>
    <LocalDebuggerEnvironment>PATH=$(QTDIR)\bin%3b$(PATH)</LocalDebuggerEnvironment>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <QTDIR>C:\Qt\Qt5.3.1\5.3\msvc2013_64_opengl</QTDIR>
    <LocalDebuggerEnvironment>PATH=$(QTDIR)\bin%3b$(PATH)</LocalDebuggerEnvironment>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <LocalDebuggerEnvironment>PATH="$(QTDIR)\bin%3b$(PATH)</LocalDebuggerEnvironment>
    <QTDIR>C:\Qt\Qt5.3.1\5.3\msvc2013_64_opengl</QTDIR>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <LocalDebuggerEnvironment>PATH="$(QTDIR)\bin%3b$(PATH)</LocalDebuggerEnvironment>
    <QTDIR>C:\Qt\Qt5.3.1\5.3\msvc2013_64_opengl</QTDIR>
  </PropertyGroup>
</Project>

2 个答案:

答案 0 :(得分:0)

通过将x64版本的Qt与x86版本进行交换解决。该项目按预期构建和运行。

答案 1 :(得分:0)

您的问题是,应用程序的32位和64位都配置为与Qt 64位链接。 32位版本需要Qt 32位,64位版本需要Qt 32位。成功配置会在win32上将<QTDIR>设置为C:\Qt\Qt5.3.1\5.3\msvc2013_32_opengl,在x64上设置为C:\Qt\Qt5.3.1\5.3\msvc2013_64_opengl