【问题标题】:xcodebuild failure clang:error no such file or directory:xcodebuild 失败 clang:error 没有这样的文件或目录:
【发布时间】:2013-02-18 23:23:04
【问题描述】:

使用 xcodebuild 构建时遇到问题。我的项目/应用程序使用 Xcode - gui 构建得很好。它根本没有找到/构建作为构建过程一部分的 libcryptopp 库。

错误是:

clang: error: no such file or directory: '/Users/builder/repo/ioskpay/xcode-cryptopp/cryptopp/build/Release-iphoneos/libcryptopp.a'  

这个特定文件应该来自主应用程序中的另一个项目 - xcodebuild 根本没有正确指向正确的文件夹,应该是:

~/Library/Developer/Xcode/DerivedData

有什么想法吗?

【问题讨论】:

标签: ios xcode xcodebuild adhoc


【解决方案1】:

要解决此问题,请转到您的项目设置,转到 Targets 并选择您的主要项目目标。然后去Build phases。在Target dependencies 下添加静态库项目。

这样,当你编译主项目时,静态库子项目在主项目之前被编译,你的静态库将可用。

【讨论】:

  • 在某些情况下,当您遇到与任何跨平台框架(flutter、nativescript、reactnative)相关的问题时,您将无法直接在 IDE 中更改 xCode 设置。在这种情况下,可能你有类似我的clang安装问题->github.com/flutter/flutter/issues/32457#issuecomment-496161092。此修复不仅可以帮助您防止上述问题,还可以防止与 clang 编译器相关的所有问题。
【解决方案2】:

我遇到了同样的问题,但是对于资源文件 .m

我打开了目标 -> 构建阶段 -> 编译源代码

我发现编译器告诉它找不到重复的文件:一个带有奇怪图标,另一个带有正常图标。我只是删除了带有奇怪图标的那个,它起作用了。 (我多次添加该文件,并且在此之前发生了合并冲突,导致项目文件出现问题)

对于您的情况,我认为您需要从目标依赖项列表中删除该库并再次添加它。这可能对你有用。

【讨论】:

  • 这对我也有帮助。
【解决方案3】:

在 Xcode 版本 9.2 (9C40b) 中,当我将一堆文件放入项目中时发生这种情况,其中一些文件是重复的。它不是简单地不添加重复项,而是再次添加它们,并且只添加名称,而不是路径。

Target > Build Phases > Compile Sources 中显示的每个重复项后面都没有“...in”。每一个都导致了 clang 错误。

删除 Xcode 收集的所有重复项后,项目编译并运行。

它使您可以使用项目导航器而不是在 Finder 中管理源文件。然后项目导航器不能像任何像样的文件管理系统(ahem Finder)那样替换重复项。 ?

【讨论】:

    【解决方案4】:

    我的 xCode 信息是:

    我在 xcode 构建项目(native swift、flutter、react native、native script)中遇到了类似的错误,其中我收到了与 clang 编译器相关的错误消息。像这样的错误:

    • clang-4.0:错误:没有这样的文件或目录:'/Users/xxxxxxxx/Library/Developer/Xcode/DerivedData/xxxxxxxxxxxxxxx/Index/Data Store'
    • clang-4.0:错误:生成多个输出文件时无法指定 -o
    • 其他

    尽管与原生应用程序的 DerivedData 相关的错误可以通过删除目录来修复,最终重新启动 xCode 甚至重新启动机器......在这种情况下,您将在删除目录并再次开始构建过程后看到,错误又回来了。

    然后,是通过运行clang --version 检查 clang 安装的时刻。正常的输出会是这样的:

    如您所见,InstalledDir 对于 xCode 不正确。就我而言,几天前我需要安装 Anaconda 应用程序(R、Python 等),现在,我记得我必须安装一些依赖项,其中一个是 clang 并且它的安装被改变了。 要解决这个问题(在我的情况下,我不再需要 anaconda):(已编辑)

    1.- 删除 anaconda 及其所有依赖项(我建议使用 App Cleaner)。 2.- 重新安装 xCode

    重新安装xCode后,如果你再次输入clang --version,你会得到这个:

    更多信息请访问:https://github.com/flutter/flutter/issues/32457#issuecomment-496161092

    希望这些信息对其他人有所帮助。

    最好的

    【讨论】:

      【解决方案5】:

      好的,只需添加正确的 -target -configuration 和 -scheme 参数,我就可以正常运行。但是,由于我在 Jenkins 中出于自动构建目的运行它,它仍然无法按我的意愿工作 - 卡在完全相同的地方。这很奇怪,因为我在另一个没有这个问题的工作中构建了完全相同的代码。在这一点上没有押韵或理由。我会继续用橡皮筋打它,当我有答案时更新......

      【讨论】:

      • 嗨,托德——结果如何?
      【解决方案6】:

      有时 Xcode 的表现很奇怪。 您必须在 Build Phase 的“Link Binary With Libraries”下找到该静态库项目,例如“filename.a”,然后将其删除并再次添加。

      我在归档目标时遇到了同样的问题。我删除了库,构建成功。

      【讨论】:

        【解决方案7】:

        对我来说,这是因为我删除了一个包裹或 pod。我跑了pod install 并修复了它

        【讨论】:

          【解决方案8】:

          在 Xcode 项目中查找丢失的文件,即文件可能被删除或丢失。

          将丢失的文件添加到 xcode 中,然后一切都会正常工作。

          【讨论】:

            【解决方案9】:

            运行这个命令:

            $ conda deactivate
            

            【讨论】:

              猜你喜欢
              • 2013-01-13
              • 2021-05-13
              • 1970-01-01
              • 2021-12-27
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2011-03-16
              相关资源
              最近更新 更多