gpt4 book ai didi

c++ - 没有编译器可以为这个 Qt 版本生成代码 - Apple silicon

转载 作者:行者123 更新时间:2023-12-05 05:55:11 30 4
gpt4 key购买 nike

我正在尝试将 Linux 项目移植到 macOS。但是,我什至无法在 M1 Macbook Air 2020(Apple 芯片)上设置构建环境。我使用自制软件安装了 qt-creator、cmake、qt 5.15 和 6.1。我在 qt-creator 设置中添加了 qt 版本和 cmake。当我想将所有内容放在工具包选项卡中时,标题中出现错误。

检查编译器选项卡,我意识到自动检测到的 clang 编译器仅为 x86。所以我克隆了 x86 clang++ 条目并将 ABI 从 x64 更改为 arm。不过,这应该可行,因为 clang++ 是一个通用二进制文件,如 file/usr/bin/clang++ 报告

/usr/bin/clang++: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64e:Mach-O 64-bit executable arm64e]
/usr/bin/clang++ (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/clang++ (for architecture arm64e): Mach-O 64-bit executable arm64e

我需要做什么才能使 Qt Creator 能够构建通用二进制文件?或者至少是任何构建?

最佳答案

您需要安装Qt 6.2支持 Apple Silicon 上的 macOS 的版本。在此 bug report 下跟踪移植任务.目前,Qt5 不支持为 M1 芯片构建。

除了更新到 Qt6.2,您还需要将您的 Qt Creator 版本更新到 Qt Creator 6。或者,您可以使用 Qt Creator 5 尝试下面的构建标志。

由于 Qt Creator 5 是作为非通用二进制文件构建的,因此无论您的机器是哪种架构,它都会默认生成 x86_64 二进制文件。要为 arm64 构建,请将 -DCMAKE_OSX_ARCHITECTURES=arm64 显式添加到项目build设置的“初始 CMake 参数”,或将 QMAKE_APPLE_DEVICE_ARCHS=arm64 添加到qmake“附加参数”字段。

关于c++ - 没有编译器可以为这个 Qt 版本生成代码 - Apple silicon,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69510029/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com