Xcode 10b5 - 重复符号链接器错误,无法使用 Crashlytics 编译

Posted

技术标签:

【中文标题】Xcode 10b5 - 重复符号链接器错误,无法使用 Crashlytics 编译【英文标题】:Xcode 10b5 - duplicate symbol linker error, can't compile with Crashlytics 【发布时间】:2019-01-07 05:23:31 【问题描述】:

我正在尝试使用 Xcode 10 beta 5 编译我的项目,该项目同时包含 Firebase、Crashlytics/Fabric 和一堆其他东西。 在链接过程中失败并出现以下错误:

Ld /Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/appname.app/appname normal arm64 (in target: appname)
        cd /Users/Username/iPhone-dev/appname
        export IPHONEOS_DEPLOYMENT_TARGET=9.0
        /Users/Username/Downloads/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -isysroot /Users/Username/Downloads/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk -L/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/AFNetworking -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/Actions -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/AppAuth -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/Bluepeer -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/Bolts -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/CocoaAsyncSocket -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/CocoaLumberjack -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/Color-Picker-for-ios -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/DNPWPSPrinter -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/DataCompression -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/EOSFTPServer -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/FBSDKCoreKit -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/FBSDKLoginKit -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/FastttCamera -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/FirebaseAuth -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/FirebaseCore -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/FirebaseDatabase -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/FirebaseStorage -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/GTMAppAuth -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/GTMSessionFetcher -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/Gloss -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/GoldRaccoon -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/GoogleToolboxForMac -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/HHServices -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/JPSVolumeButtonHandler -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/M13BadgeView -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/ObjectiveDropboxOfficial -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/PhoneNumberKit -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/Protobuf -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/TPCircularBuffer -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/leveldb-library -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/nanopb -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/upnpx -F/Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/xaphodObjCUtils -F/Users/Username/iPhone-dev/appname/Pods/Crashlytics/iOS -F/Users/Username/iPhone-dev/appname/Pods/Fabric/iOS -F/Users/Username/iPhone-dev/appname/Pods/FirebaseABTesting/Frameworks -F/Users/Username/iPhone-dev/appname/Pods/FirebaseAnalytics/Frameworks -F/Users/Username/iPhone-dev/appname/Pods/FirebaseDynamicLinks/Frameworks -F/Users/Username/iPhone-dev/appname/Pods/FirebaseInstanceID/Frameworks -F/Users/Username/iPhone-dev/appname/Pods/FirebaseRemoteConfig/Frameworks -F/Users/Username/iPhone-dev/appname/Pods/TwitterCore/iOS -F/Users/Username/iPhone-dev/appname/Pods/TwitterKit/iOS -F/Users/Username/iPhone-dev/appname/cascablecore-binaries/Binaries/iOS -filelist /Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Intermediates.noindex/appname.build/Debug-iphoneos/appname.build/Objects-normal/arm64/appname.LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -Xlinker -rpath -Xlinker @executable_path/Frameworks -miphoneos-version-min=9.0 -dead_strip -Xlinker -object_path_lto -Xlinker /Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Intermediates.noindex/appname.build/Debug-iphoneos/appname.build/Objects-normal/arm64/appname_lto.o -Xlinker -export_dynamic -Xlinker -no_deduplicate -fobjc-arc -fobjc-link-runtime -L/Users/Username/Downloads/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos -Xlinker -add_ast_path -Xlinker /Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Intermediates.noindex/appname.build/Debug-iphoneos/appname.build/Objects-normal/arm64/appname.swiftmodule -ObjC -lc++ -licucore -lsqlite3 -lz -framework AFNetworking -framework AVFoundation -framework Accounts -framework Actions -framework AppAuth -framework AssetsLibrary -framework Bluepeer -framework Bolts -framework CFNetwork -framework CocoaAsyncSocket -framework CocoaLumberjack -framework Color_Picker_for_iOS -framework CoreData -framework CoreGraphics -framework CoreMedia -framework CoreText -framework Crashlytics -framework DNPWPSPrinter -framework DataCompression -framework EOSFTPServer -framework FBSDKCoreKit -framework FBSDKLoginKit -framework Fabric -framework FastttCamera -framework FirebaseABTesting -framework FirebaseAnalytics -framework FirebaseAuth -framework FirebaseCore -framework FirebaseCoreDiagnostics -framework FirebaseDatabase -framework FirebaseDynamicLinks -framework FirebaseInstanceID -framework FirebaseNanoPB -framework FirebaseRemoteConfig -framework FirebaseStorage -framework Foundation -framework GTMAppAuth -framework GTMSessionFetcher -framework Gloss -framework GoldRaccoon -framework GoogleToolboxForMac -framework HHServices -framework JPSVolumeButtonHandler -framework M13BadgeView -framework MessageUI -framework MobileCoreServices -framework ObjectiveDropboxOfficial -framework PhoneNumberKit -framework Protobuf -framework QuartzCore -framework SafariServices -framework Security -framework Social -framework StoreKit -framework SystemConfiguration -framework TPCircularBuffer -framework TwitterCore -framework TwitterKit -framework UIKit -framework leveldb -framework nanopb -framework upnpx -framework xaphodObjCUtils -weak_framework WebKit -ObjC -lc++ -licucore -lsqlite3 -lz -lctemplate-ios -letpan-ios -lxml2 -lsasl2 -liconv -ltidy -lz -lc++ -lresolv -stdlib=libc++ -ObjC /Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/libMailCore-ios.a -framework SafariServices -framework CascableCore -framework Security -framework CFNetwork -framework MessageUI -framework StoreKit -framework GameKit -framework StopKit -framework Pods_appname -Xlinker -dependency_info -Xlinker /Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Intermediates.noindex/appname.build/Debug-iphoneos/appname.build/Objects-normal/arm64/appname_dependency_info.dat -o /Users/Username/Library/Developer/Xcode/DerivedData/appname-lastnamepjksdzfewpftlvqzuglaxplu/Build/Products/Debug-iphoneos/appname.app/appname

    duplicate symbol l086 in:
        /Users/Username/iPhone-dev/appname/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics(CLSFileManager.o)
        /Users/Username/iPhone-dev/appname/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics(CLSInternalReport.o)
    duplicate symbol l087 in:
        /Users/Username/iPhone-dev/appname/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics(CLSFileManager.o)
        /Users/Username/iPhone-dev/appname/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics(CLSInternalReport.o)
    duplicate symbol l088 in:
        /Users/Username/iPhone-dev/appname/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics(CLSSettings.o)
        /Users/Username/iPhone-dev/appname/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics(CLSInternalReport.o)
....<many more omitted>

让 Google Fabric / Crashlytics 与 Xcode 10 一起工作的诀窍是什么?

编辑:感谢到目前为止所有发表评论的人。到目前为止我尝试过的:

尝试重新安装 pod/清除 pod 缓存 尝试清理构建文件夹,然后重新启动 xcode 尝试使用 -ObjC 链接器标志。看起来这个标志确实与问题有关,但不幸的是,我需要激活这个标志,因为我使用的 Objective-c 框架在类上有静态类别

【问题讨论】:

我收到“ld: 163 架构 arm64 的重复符号” 我对 Xcode 10 beta5 有同样的问题。它在 beta4 上没有问题。到目前为止,我只能说在链接器中使用“-ObjC”或“-force_load”标志存在问题。我还可以确认它仅无法为真实设备构建并且对于模拟器没有问题。苹果需要解决这个问题。 您可以在这里找到每个 Xcode 版本(测试版和发布版):xcodereleases.com Crashlytics 团队已意识到此问题,请参阅 twitter.com/crashlytics/status/1024359450436685824 得到了 Apple 员工的回复。在此处查看爱斯基摩人的回应。 forums.developer.apple.com/thread/106694 【参考方案1】:

使用 Xcode 10b6(今天早上发布)为我修复了!

【讨论】:

This answer is being discussed on meta.

以上是关于Xcode 10b5 - 重复符号链接器错误,无法使用 Crashlytics 编译的主要内容,如果未能解决你的问题,请参考以下文章

重复符号链接器错误(C++ 帮助)

为啥 XCode 会抛出重复的符号错误?

Xcode 8.0 更新后架构 arm64 的重复符号

ParseFacebookUtilsV4 架构 armv7 的重复符号

设备和模拟器中iPhone应用程序上的Xcode链接器错误[重复]

链接器错误VS 2013 [重复]