ld:找不到框架 Crashlytics

问题描述 投票:0回答:9

拉取后我突然在 xcode 中收到以下错误:

ld: framework not found Crashlytics

不过我的队友没有问题。他更新了 Crashlytics,并将更改推送到 SourceTree,因为它在他的计算机上运行良好。即使我完全删除该项目并进行 git 克隆,它仍然不起作用。

ios crashlytics
9个回答
25
投票

该问题是由 SourceTree 中的错误引起的,该错误无法检测二进制文件中的类型更改。当您的队友更新 Crashlytics 和 Fabric 时,源代码树无法识别它所做的一些二进制符号链接更改。解决方案是执行以下操作:

  • 前往他的终端
  • 导航到他的项目文件夹 (
    cd ~/folder/to/project
    )
  • 添加缺少的文件(
    git add --all
    )
  • 从那里提交更改 (
    git commit -a -m "My informational commit message"
    )
  • 推送他的更改(
    git push origin branch_name
    )
  • 最后在你的电脑上拉一下(
    git pull origin branch_name
    )

21
投票

请在

$(inherited)
构建设置中添加
FRAMEWORK_SEARCH_PATHS
这对我有用。


16
投票

检查您的目标 - 构建设置 - 其他链接器标志

如果您刚刚更新到

pod 'Firebase/Crashlytics'
并且存在
Crashlytics
,请将其设为
FirebaseCrashlytics

还要检查是否有

Fabric
,如果存在则将其删除。 (也删除布料线下的下一行
framework

现在应该可以成功构建了。


3
投票

检查您的目标 - 构建设置 - 其他链接器标志

如果您刚刚更新到 pod“Firebase/Crashlytics”并且存在 Crashlytics,请将其设为 FirebaseCrashlytics。

同样,如果您在终端中看到 pod 已被删除,请从 其他链接器标志还有 示例:Fabric、FirebaseInstanceID。 (也删除 Fabric 下的下一行框架,FirebaseInstanceID 行)

现在应该可以成功构建了。


1
投票

如果您无法访问原始存储库(为了检查丢失的文件),使用 Fabric 的帮助工具重新添加框架也可以作为构建的“修复”。


1
投票

在目标构建设置中的框架搜索路径中添加 $(inherited)。问题得到解决。


0
投票

只需保留 Firebase/Crashlytics 并删除 Crashlytics 和 Fabric。


-1
投票

运行前尝试“pod install”


-2
投票

只需在 Project .ld 文件中找到并将其从 Project 中删除,然后 调试,

其工作完美。

删除所有功能后保持原样。 它不依赖于那个 .ld 文件。

  • 所以,解决方案是删除它。
© www.soinside.com 2019 - 2024. All rights reserved.