由于缺少必需的架构armv7,因此无法构建DJI示例应用程序

时间:2019-06-12 15:37:45

标签: dji-sdk

我正在尝试将我的应用程序的DJI SDK更新到最新版本(即对于DJISDK / UXSDK为v4.10,对于DJIWidget为v1.5),以便与Matrice 200 V2系列兼容。我遇到了一个错误,我也可以使用DJI Mobile-UXSDK-iOS repo中的示例应用程序来重现该错误。

基本上,当我尝试存档应用程序时,它会显示此错误:

ld: warning: directory not found for option '-F/Users/nachocarnicero/git/Mobile-UXSDK-iOS/Sample Code/ObjcSampleCode/Frameworks'
ld: warning: directory not found for option '-F/Users/nachocarnicero/git/Mobile-UXSDK-iOS/Sample Code/ObjcSampleCode/../DJIWidget'
ld: warning: ignoring file /Users/nachocarnicero/git/Mobile-UXSDK-iOS/Sample Code/ObjcSampleCode/Pods/DJI-UXSDK-iOS/iOS_UXSDK/DJIUXSDK.framework/DJIUXSDK, missing required architecture armv7 in file /Users/nachocarnicero/git/Mobile-UXSDK-iOS/Sample Code/ObjcSampleCode/Pods/DJI-UXSDK-iOS/iOS_UXSDK/DJIUXSDK.framework/DJIUXSDK (2 slices)
ld: warning: ignoring file /Users/nachocarnicero/git/Mobile-UXSDK-iOS/Sample Code/ObjcSampleCode/Pods/DJI-SDK-iOS/iOS_Mobile_SDK/DJISDK.framework/DJISDK, missing required architecture armv7 in file /Users/nachocarnicero/git/Mobile-UXSDK-iOS/Sample Code/ObjcSampleCode/Pods/DJI-SDK-iOS/iOS_Mobile_SDK/DJISDK.framework/DJISDK (2 slices)
Undefined symbols for architecture armv7:
  "_OBJC_CLASS_$_DUXBatteryWidget", referenced from:
      _OBJC_CLASS_$_MyBatteryWidget in MyBatteryWidget.o
      objc-class-ref in PanelsCollectionsViewController.o
  "_OBJC_METACLASS_$_DUXDefaultLayoutViewController", referenced from:
      _OBJC_METACLASS_$_DefaultLayoutViewController in DefaultLayoutViewController.o
  "_OBJC_METACLASS_$_DUXBatteryWidget", referenced from:
      _OBJC_METACLASS_$_MyBatteryWidget in MyBatteryWidget.o
  "_OBJC_CLASS_$_DUXStatusBarViewController", referenced from:
      objc-class-ref in PanelsCollectionsViewController.o
  "_OBJC_CLASS_$_DUXDefaultLayoutViewController", referenced from:
      _OBJC_CLASS_$_DefaultLayoutViewController in DefaultLayoutViewController.o
  "_OBJC_CLASS_$_DJISDKManager", referenced from:
      objc-class-ref in MainViewController.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

在此版本之前,一切正常,所以我认为最新的DJI SDK版本存在问题。

我正在使用ObjectiveC示例代码,并且该应用程序在iPad Pro上运行的调试模式下运行良好。

1 个答案:

答案 0 :(得分:0)

万一有人遇到这个问题,看来新的DJI SDK与armv7架构不兼容,因此解决方案是转到项目的XCode Build Settings选项卡,然后删除armv7 Valid Architectures就像doc在DJI Mobile-SDK-iOS存储库上所做的一样。