架构 x86_64 的 Xcode 未定义符号:
Posted
技术标签:
【中文标题】架构 x86_64 的 Xcode 未定义符号:【英文标题】:Xcode Undefined symbols for architecture x86_64: 【发布时间】:2016-11-16 21:53:43 【问题描述】:我从另一个开发人员那里接手了一个 Xcode 项目,并试图在我的本地计算机上启动并运行代码。
我收到此错误:
Undefined symbols for architecture x86_64:
这是我来自 Xcode 的日志文件:
Ld
/Users/etiennelouw/Library/Developer/Xcode/DerivedData/TheBridesOffice-dikntijbbbpirgcsdaggnwtzafqj/Build/Products/Debug-iphonesimulator/TheBridesOffice.app/TheBridesOffice
normal x86_64
cd "/Users/etiennelouw/Downloads/App (1)/TheBridesOffice"
export IPHONEOS_DEPLOYMENT_TARGET=7.0
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
-arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.3.sdk
-L/Users/etiennelouw/Library/Developer/Xcode/DerivedData/TheBridesOffice-dikntijbbbpirgcsdaggnwtzafqj/Build/Products/Debug-iphonesimulator
-F/Users/etiennelouw/Library/Developer/Xcode/DerivedData/TheBridesOffice-dikntijbbbpirgcsdaggnwtzafqj/Build/Products/Debug-iphonesimulator
-F/Users/etiennelouw/Downloads/App\ (1)/TheBridesOffice/TheBridesOffice/Class/Addition/Parse
-F/Users/etiennelouw/Downloads/App\ (1)/TheBridesOffice/TheBridesOffice/Class/Addition/Facebook
-F/Users/etiennelouw/Documents/FacebookSDK -filelist /Users/etiennelouw/Library/Developer/Xcode/DerivedData/TheBridesOffice-dikntijbbbpirgcsdaggnwtzafqj/Build/Intermediates/TheBridesOffice.build/Debug-iphonesimulator/TheBridesOffice.build/Objects-normal/x86_64/TheBridesOffice.LinkFileList
-Xlinker -rpath -Xlinker @executable_path/Frameworks -mios-simulator-version-min=7.0 -Xlinker -no_deduplicate -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -lsqlite3 -framework Bolts -framework MobileCoreServices -framework FBSDKShareKit -framework ParseCrashReporting -framework
FBSDKMessengerShareKit -framework FBAudienceNetwork -framework
FBSDKCoreKit -framework ParseFacebookUtilsV4 -framework FBSDKLoginKit
-framework Parse -framework SystemConfiguration -framework AudioToolbox -framework CoreImage -framework ParseFacebookUtils
-framework QuartzCore -framework ParseUI -Xlinker -dependency_info -Xlinker /Users/etiennelouw/Library/Developer/Xcode/DerivedData/TheBridesOffice-dikntijbbbpirgcsdaggnwtzafqj/Build/Intermediates/TheBridesOffice.build/Debug-iphonesimulator/TheBridesOffice.build/Objects-normal/x86_64/TheBridesOffice_dependency_info.dat
-o /Users/etiennelouw/Library/Developer/Xcode/DerivedData/TheBridesOffice-dikntijbbbpirgcsdaggnwtzafqj/Build/Products/Debug-iphonesimulator/TheBridesOffice.app/TheBridesOffice
Undefined symbols for architecture x86_64:
"_FBSDKAppEventNameFBSessionNativeAppSwitchLoginDialogResult",
referenced from:
-[FBSDKLoginManagerLogger logNativeAppDialogResult:dialogDuration:] in
FBSDKLoginKit(FBSDKLoginManagerLogger.o)
"_FBSDKDialogConfigurationNameLogin", referenced from:
-[FBSDKLoginManager logInWithBehavior:serverConfiguration:serverConfigurationLoadError:]
in FBSDKLoginKit(FBSDKLoginManager.o)
-[FBSDKLoginManager(Native) performBrowserLogInWithParameters:handler:] in
FBSDKLoginKit(FBSDKLoginManager.o)
"_FBSDKMonotonicTimeGetCurrentSeconds", referenced from:
-[FBSDKLoginManagerLogger parametersWithTimeStampAndClientState:forAuthMethod:] in
FBSDKLoginKit(FBSDKLoginManagerLogger.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
这是我在架构下的内容: Architectur
这是我按照 facebook SDK 入门指南导入的框架文件: Framework
【问题讨论】:
构建设置 -> 架构下有什么?您是否需要 X64 而不是 $ARCH_STANDARD (armv7, arm64)。检查 FB pod 目标。 我已经用架构的截图更新了我的问题,我一直在尝试添加其他字段,正如我在网上看到的那样,这可能是问题,但无论我输入了什么字段,我仍然得到同样的错误。 引用代码标记 【参考方案1】:似乎您的项目在链接时缺少依赖项,因为在链接阶段缺少FBSDKLoginKit.framework
。
尝试通过 Facebook 指南重新检查您的配置 - Getting Started with the Facebook SDK for iOS。
【讨论】:
我已经阅读了这个入门指南以及解析和 facebook sdk 入门教程,但它仍然给出错误,我已经从 Build Phases -> Link Binary With Libraries 中删除了重复项,仍然同样的错误。不知道还能去哪里看,任何想法都会令人惊叹。 所以差不多了,框架搜索路径中似乎有一个重复的文件夹获取了错误版本的 FB SDK,因此将其删除,现在已经成功构建。跨度> 很高兴听到。很抱歉延迟回答,但我很高兴我的想法可以帮助您解决问题。以上是关于架构 x86_64 的 Xcode 未定义符号:的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 无法构建 React Native 项目,架构 x86_64 的未定义符号
终端中的“架构 x86_64 的未定义符号”,但 xcode 中没有错误
架构 x86_64 的未定义符号:JNI_CreateJavaVM OS-X Xcode