【问题标题】:How to make Qt Creator use Rosetta and x86 compiler on Mac M1?如何让 Qt Creator 在 Mac M1 上使用 Rosetta 和 x86 编译器?
【发布时间】:2022-08-23 01:19:16
【问题描述】:

我在用Qt 5.15.2在我的麦克迷你M1芯片。这很好用(由于 Rosetta)。下面是在这台计算机上找到的编译器 Qt Creator 的列表,其中包括C++、x86 64 位我使用的。没问题。

我想在(更新的)上使用相同的设置MacBook Pro(也与M1芯片)。下面是 Qt Creator 在这台计算机上找到的编译器列表,x86 现在不见了!

我不知道我在新的 M1 计算机上是否有 x86 编译器。我已经为 XCode 13.2 安装了 Xcode 和命令行工具。

  1. 我可以在某处告诉 Qt Creator 部署目标是 x86 吗?

  2. /usr/bin/clang++ 是否只为 ARM/M1 芯片编译,或者它也可以生成并链接到 x86 代码?

  3. 如果没有,我怎样才能知道我的新 M1 计算机上是否有 x86 编译器?

  4. 如果缺少编译器,如何安装?

    非常感激任何的帮助!

标签: c++ qt qt-creator apple-m1 rosetta


【解决方案1】:

一些有用的提示,我只是在 2021 M1 Mac 上使用 Qt 5.15.2 设置了一个项目。

请注意,对于 Qt >= 6,这可能会有所不同。

  1. 我可以告诉 Qt Creator 部署目标是 x86 吗?

    是的,您可以使用套件构建设置中的特定参数来执行此操作。

    • QMAKE_APPLE_DEVICE_ARCHS="x86_64" 附加参数添加到qmake。
    • 另外,添加一个额外的 CMake 选项:-DCMAKE_OSX_ARCHITECTURES:STRING="x86_64"

    ℹ️ 在项目视图中单击Manage Kits.. 以打开首选项编辑器,您可以在其中更新您的 CMake 配置。


    1. /usr/bin/clang++ 是否只为 ARM/M1 芯片编译,或者它也可以生成并链接到 x86 代码?

    安装了rosetta(/usr/sbin/softwareupdate –install-rosetta –agree-to-license)和上面的配置,是的,你可以编译和链接x86二进制文件。

【讨论】:

    猜你喜欢
    • 2013-09-28
    • 2021-09-21
    • 1970-01-01
    • 2015-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-14
    相关资源
    最近更新 更多