【问题标题】:Qt - module machine type 'x64' conflicts with target machine type 'X86'Qt - 模块机器类型“x64”与目标机器类型“X86”冲突
【发布时间】:2017-01-17 16:48:04
【问题描述】:

我在尝试从 Qt Creator 编译我的 Qt 项目时收到上述错误。我可以在某处将目标机器类型更改为 x64 吗?

当我从命令行将项目转换为 VC++ 项目时,它会构建并运行。这已经足够好了,但是如果能够直接从 Qt Creator 构建和运行会很方便。

这是因为 Qt 是 32 位而其他组件是 64 位吗?

【问题讨论】:

    标签: c++ qt qt-creator


    【解决方案1】:

    Qt 的 32/64 位构建必须与您项目的 Visual Studio 项目设置相对应。请记住,在给定的开发系统上同时存在多个(可能是几十个)Qt 构建是完全正常的。您正在构建的特定项目应使用与其兼容的 Qt 构建:Visual Studio 版本和 32/64 位选择必须一致。

    请注意,VS2015 Update 3 与 VS2017 二进制兼容。否则,使用不匹配的 Visual Studio 主要版本构建的 C++ 代码不兼容二进制(不会链接或在启动时崩溃)。

    【讨论】:

    • 使用 Visual Studio,项目构建和运行完美。问题在于 Qt Creator。 (我不确定我是否正确理解了您的答案。)
    • Qt Creator 使用您选择的 Qt 安装和您选择的编译器来构建您的项目。所有这些元素都必须匹配。如果您没有选择其中任何一个,那么默认设置对您不起作用,您必须自己做出其他选择。转到 Creator 的“构建和运行”窗格,然后确保您已将正确的条目添加到编译器、Qt 版本和工具包中。最后,确保为您的项目选择正确的套件。请注意,Qt Creator 不是编译器,但 Visual Studio 是几个编译器,也是一个 IDE。
    猜你喜欢
    • 2021-11-17
    • 1970-01-01
    • 1970-01-01
    • 2015-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多