WebdriverAgent:链接器命令失败,退出代码为 1(使用 -v 查看调用)

Posted

技术标签:

【中文标题】WebdriverAgent:链接器命令失败,退出代码为 1(使用 -v 查看调用)【英文标题】:WebdriverAgent: linker command failed with exit code 1 (use -v to see invocation) 【发布时间】:2019-03-01 11:09:57 【问题描述】:

我正在尝试在 ios 真实设备上构建 webdriveragent。直到昨天它工作正常。从那以后,我没有对盒子进行任何更新。我在编译时看到以下错误:

\Ld /Users/qaautomation/Library/Developer/Xcode/DerivedData/Build/Products/Debug-iphoneos/WebDriverAgentLib.framework/WebDriverAgentLib 正常 arm64(目标:WebDriverAgentLib) cd /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent 导出 IPHONEOS_DEPLOYMENT_TARGET=11.3 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -dynamiclib -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/ iPhoneOS12.0.sdk -L/Users/qaautomation/Library/Developer/Xcode/DerivedData/Build/Products/Debug-iphoneos -F/Users/qaautomation/Library/Developer/Xcode/DerivedData/Build/Products/Debug-iphoneos - F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Frameworks -F/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/Carthage/Build/ iOS -F/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/Carthage/Build/Mac -filelist /Users/qaautomation/Library/Developer/Xcode/DerivedData/Build/Intermediates.noindex/ WebDriverAgent.build/Debug-iphoneos/WebDriverAgentLib.build/Objects-normal/arm64/WebDriverAgentLib.LinkFileList -install_name @rpath/WebDriverAgentLib.framework/WebDriverAgentLib -Xlin ker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -miphoneos-version-min=11.3 -dead_strip -Xlinker -object_path_lto -Xlinker /Users/qaautomation/Library/Developer/Xcode/DerivedData/Build/ Intermediates.noindex/WebDriverAgent.build/Debug-iphoneos/WebDriverAgentLib.build/Objects-normal/arm64/WebDriverAgentLib_lto.o -Xlinker -export_dynamic -Xlinker -no_deduplicate -fobjc-arc -fobjc-link-runtime -lxml2 -framework RoutingHTTPServer -framework YYCache -compatibility_version 1 -current_version 1 -Xlinker -dependency_info -Xlinker /Users/qaautomation/Library/Developer/Xcode/DerivedData/Build/Intermediates.noindex/WebDriverAgent.build/Debug-iphoneos/WebDriverAgentLib.build/Objects-normal/arm64/ WebDriverAgentLib_dependency_info.dat -o /Users/qaautomation/Library/Developer/Xcode/DerivedData/Build/Products/Debug-iphoneos/WebDriverAgentLib.framework/WebDriverAgentLib

架构 arm64 的未定义符号: “_OBJC_CLASS_$_XCElementSnapshot”,引用自: l_OBJC_$_CATEGORY_XCElementSnapshot_$_FBIsVisible 在 XCUIElement+FBIsVisible.o XCUIElement+FBUID.o 中的 l_OBJC_$_CATEGORY_XCElementSnapshot_$_FBUID XCUIElement+FBWebDriverAttributes.o 中的 l_OBJC_$_CATEGORY_XCElementSnapshot_$_WebDriverAttributes XCUIElement+FBWebDriverAttributes.o 中的 objc-class-ref XCUIElement+FBUtilities.o 中的 objc-class-ref XCUIElement+FBAccessibility.o 中的 l_OBJC_$_CATEGORY_XCElementSnapshot_$_FBAccessibility l_OBJC_$_CATEGORY_XCElementSnapshot_$_FBScrolling in XCUIElement+FBScrolling.o ... ld:未找到架构 arm64 的符号 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

我正在使用最新的 Xcode 和 appium 有人可以帮我解决这个问题吗?

【问题讨论】:

【参考方案1】:

在 WebDriverAgentLib 目标的其他链接器标志中添加 -Wl,-U,"_OBJC_CLASS_$_XCElementSnapshot"。

【讨论】:

以上是关于WebdriverAgent:链接器命令失败,退出代码为 1(使用 -v 查看调用)的主要内容,如果未能解决你的问题,请参考以下文章

cocoapods - 链接器命令失败,退出代码为 1

链接器命令失败,退出代码为 1(使用 -v)

Xcode - 链接器命令失败,退出代码为 1

Cocoapods 安装,然后“链接器命令失败,退出代码 1”

错误:链接器命令失败,退出代码为 1(使用 -v 查看调用):在 Macbook [重复]

Xcode:Pod 安装后构建失败(错误:链接器命令失败,退出代码 1)