【问题标题】:Xcode 9: "clang: error: cannot specify -o when generating multiple output files"Xcode 9:“clang:错误:生成多个输出文件时无法指定 -o”
【发布时间】:2020-02-14 22:27:06
【问题描述】:

我刚刚将 Xcode 更新到版本 9,并且在编译时开始收到以下错误消息:


该问题似乎与将“优化级别”参数设置为“无”(即 -O0)进行编译有关。如果我将其设置得更高,错误就会消失,但是当我增加优化时,调试工具无法正常工作(例如变量跟踪)。

我查看了列出此错误的其他问题,但它们要么涉及某种重复的“-isystem”,要么根本不涉及 Xcode。

我目前正在使用通过 macports(端口 clang-5.0)下载的外部 clang 编译程序,以便使用 openmp(mac os 附带的默认 clang 不附带)进行调试。

有什么建议吗?

【问题讨论】:

    标签: xcode macos clang++


    【解决方案1】:

    我在 Xcode 9 中尝试启用 OpenMP 时遇到了同样的错误。

    终于能够通过更改从this 找到的一些 Xcode 9 设置来解决问题:

    构建设置 > 构建选项 > 在构建时启用索引功能

    【讨论】:

    • 老实说,我有点厌倦了每隔几个月处理一次中断我开发周期的 XCode 更改,所以在遇到这个问题后,我对 Visual Studio Code 进行了更改(我正在非常满意)。但是,我做了一个最小的 xcode 项目,它能够重现我的上述问题,并且您的建议解决了它,所以我接受这个作为解决方案。
    • 在命令行上使用clang 时,存在类似的选项:-index-store-path。删除它修复了错误。
    • 美丽的人类,你。这次真是万分感谢。昨天我经历了一个多小时的兔子洞,尝试了各种设置和更新 clang、llvm、XCode。重新开始并更改此设置是让我克服此错误(以及其他人哈哈)的原因。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多