Ios 是什么导致此Crashlytics编译警告?(提供的自动链接';.&&';处的框架链接器选项不是动态库)
编译我的主目标(不是类似的测试目标)会产生以下错误:Ios 是什么导致此Crashlytics编译警告?(提供的自动链接';.&&';处的框架链接器选项不是动态库),ios,xcode,crashlytics,Ios,Xcode,Crashlytics,编译我的主目标(不是类似的测试目标)会产生以下错误: ld: warning: Auto-Linking supplied '~/Documents/my_app/MyApp/Crashlytics.framework/Crashlytics', framework linker option at ~/Documents/my_app/MyApp/Crashlytics.framework/Crashlytics is not a dylib 通过此生成命令: Ld/B
ld: warning: Auto-Linking supplied
'~/Documents/my_app/MyApp/Crashlytics.framework/Crashlytics',
framework linker option at
~/Documents/my_app/MyApp/Crashlytics.framework/Crashlytics
is not a dylib
通过此生成命令:
Ld/Build/Products/Debug iphonesimulator/MyApp.app/MyApp normal i386
cd~/Documents/my_app/MyApp
导出IPHONEOS_部署_目标=8.0
export PATH=“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/sbin:/sbin”
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-arch i386-isysroot/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.2.sdk-L~/Library/Developer/Xcode/DerivedData/MyApp dbmrsjmskpqxmnegayfzfxgcwvsm/Build/Products/Debug iphonesim-F~/Library/Developer/Xcode/DerivedData/MyApp dbmrskpqxmnegayfzfxgcwvsm/Build/Products/Debug iphonesimulator-F~/Documents/my_app/MyApp/MyApp-filelist~/Library/Developer/Xcode/DerivedData/MyApp dbmrskpqxmnegayfzfxgcwvsm/Build/Intermediates/MyApp.Build/Debug-iphonesimulator/MyApp.Build/Objects/Objects-normal/i386/MyApp.LinkFileList-Xlinker-rpXlinker @ ExcutababyPosith/Framework——Xlinker -ObjcAbabix版本-xLoker-Obj-LPODS CuuluMunBeJeJ-LPODS地幔-框架CFNET-框架基础-框架安全性-框架系统配置-FObjc ARC-FOBC链接运行时- Xlinker - Noi-PyclisiyDyLiB-MIOS模拟器版本MIN=8 -框架核心图-LPODs -框架MapKit-framework Fabric-lPods MyApp-Xlinker-dependency_info-Xlinker~/Library/Developer/Xcode/DerivedData/MyApp dbmrsjmskpqxmnegayfzfxgcwvsm/Build/mediates/MyApp.Build/Debug-iphonesimulator/MyApp.Build/Objects-normal/i386/MyApp_dependency_info.dat-o~/Library/Developer/Xcode/DerivedData/MyApp dbmrsjmskpqxmnegayfzfxgcwvsm/Build/Products/Debug iphonesimulator/MyApp.app/MyApp
缺少的链接: 此错误几乎总是由于没有将二进制文件链接到库而产生的(在本例中是
Crashlytics.framework
):
尝试构建目标MyApp
(其中包含带有#import
的标题)将产生错误:
ld:警告:已提供自动链接
“../../Crashlytics.framework/Crashlytics”,位于的框架链接器选项
../../Crashlytics.framework/Crashlytics不是动态库
链接框架:
幸运的是,只需将Crashlytics.framework
从项目导航器中的Frameworks
文件夹拖动到链接二进制文件与库的列表中,或者使用+
即可轻松解决问题
- 执行此过程时,请确保在目标下选择/突出显示应用程序
我也遇到了同样的问题。可能是我把最初的fabric安装搞砸了,但一旦我将fabric.framework添加到框架列表中(默认情况下应该在应用程序的根文件夹中),一切都正常了。为了将来的参考,如果将测试文件链接到应用程序目标,也会发生这种情况
例如:
与I'L'I和user3517250提到的相反,问题还可能是您的#import
语句不应该存在
Xcode确实从#import
语句中推断出要链接的框架。如果您导入了一个未链接的框架,则会收到此警告。我遇到了相同的问题,但原因不同
错误输出
ld:警告:提供的自动链接“~/GameFolder/Pods/Fabric/tvOS/Fabric.framework/Fabric”,位于~/GameFolder/Pods/Fabric/tvOS/Fabric.framework/Fabric的框架链接器选项不是动态库
架构x86_64的未定义符号:
“_OBJC_CLASS_$_Answers”,引用自:
在GameSecene.o中为uu ObjC.Answers键入元数据访问器
在AppDelegate.o中为_ObjC.Answers键入元数据访问器
“_OBJC_CLASS_$_Crashlytics”,引用自:
在AppDelegate.o中为uu ObjC.Crashlytics键入元数据访问器
“_OBJC_CLASS_$_Fabric”,引用自:
在AppDelegate.o中为_ObjC.Fabric键入元数据访问器
ld:找不到架构x86_64的符号
叮当声:错误:链接器命令失败,退出代码为1(使用-v查看调用)
理由
- 我的目标是覆盖
其他\u LDFLAGS
解决方案
- 将
其他\u LDFLAGS
更改为仅继承链接器标志。基本上,将其更改为$(继承)
我遵循了@I'L'I提供的所有步骤,但在构建阶段我无法找到Crashlytics.framework
和Fabric.framework
文件
所以这对我有帮助
步骤1:遵循给定的所有步骤
步骤2:现在,当您无法在中找到Crashlytics.framework
和Fabric.framework
文件时,请单击+
将二进制文件链接到库中
2.1:单击链接二进制文件与库中的+
按钮
2.2:点击添加其他…
按钮。
2.3:现在从Pod
文件夹中选择crashlysic.framework
和Fabric.framework
——如果使用cocoapods,则从下载位置选择这两个文件
第3步:构建成功,请欣赏。现在,Fabric.framework也需要以相同的方式链接。您完全挽救了我浪费的时间!嘿,我最近也遇到了同样的问题。我从谷歌得到了它,正是我的单元测试给我带来了麻烦。所以,是的,解决方案是相同的,但目标是MyAppTests,所以请记住!!是的,