iOS编译报错 arm64
使用极光RN插件集成推送功能,pod集成,手动link真机报“ld: symbol(s) not found for architecture arm64”。
报错日志:
Undefined symbols for architecture arm64:
"_JPUSHStringHashingByMD5", referenced from:
-[JPUSHBadgeNumberReportRequest p_generateRequestHead] in libjpush-ios-3.1.2.a(JPUSHBadgeNumberReport.o)
"_OBJC_METACLASS_$_JPUSHReportResponse", referenced from:
_OBJC_METACLASS_$_JPUSHMessageReportResponse in libjpush-ios-3.1.2.a(JPUSHMessageReport.o)
_OBJC_METACLASS_$_JPUSHBadgeNumberReportResponse in libjpush-ios-3.1.2.a(JPUSHBadgeNumberReport.o)
"_OBJC_METACLASS_$_JPUSHReportRequest", referenced from:
_OBJC_METACLASS_$_JPUSHMessageReportRequest in libjpush-ios-3.1.2.a(JPUSHMessageReport.o)
_OBJC_METACLASS_$_JPUSHBadgeNumberReportRequest in libjpush-ios-3.1.2.a(JPUSHBadgeNumberReport.o)
"_OBJC_CLASS_$_JPUSHFileHelper", referenced from:
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHTagAlias.o)
"_OBJC_CLASS_$_JPUSHRequest", referenced from:
_OBJC_CLASS_$_JPUSHAliasRequest in libjpush-ios-3.1.2.a(JPUSHAliasOperation.o)
_OBJC_CLASS_$_JPUSHTagsRequest in libjpush-ios-3.1.2.a(JPUSHTagsOperation.o)
_OBJC_CLASS_$_JPUSHUserPropertyRequest in libjpush-ios-3.1.2.a(JPUSHUserProperty.o)
_OBJC_CLASS_$_JPUSHSetTagAlias in libjpush-ios-3.1.2.a(JPUSHSetTagAlias.o)
"_OBJC_CLASS_$_JPUSHReportResponse", referenced from:
_OBJC_CLASS_$_JPUSHMessageReportResponse in libjpush-ios-3.1.2.a(JPUSHMessageReport.o)
_OBJC_CLASS_$_JPUSHBadgeNumberReportResponse in libjpush-ios-3.1.2.a(JPUSHBadgeNumberReport.o)
"_JPUSHGetCurrentTimestamp", referenced from:
-[JPUSHTagAlias setTagAliasUsingCallback:] in libjpush-ios-3.1.2.a(JPUSHTagAlias.o)
-[JPUSHTagAliasManagerController tagOperate:type:andCompletion:andSeq:] in libjpush-ios-3.1.2.a(JPUSHTagAliasManagerController.o)
-[JPUSHTagAliasManagerController aliasOperate:type:andCompletion:andSeq:] in libjpush-ios-3.1.2.a(JPUSHTagAliasManagerController.o)
-[JPUSHTagAliasManagerController handleServerUnavaiableResponseWith:andContent:] in libjpush-ios-3.1.2.a(JPUSHTagAliasManagerController.o)
-[JPUSHTagAliasManagerController isFreezeReport] in libjpush-ios-3.1.2.a(JPUSHTagAliasManagerController.o)
"_OBJC_CLASS_$_JPUSHReceivedPacketController", referenced from:
_OBJC_CLASS_$_JPUSHAliasResponse in libjpush-ios-3.1.2.a(JPUSHAliasOperation.o)
_OBJC_CLASS_$_JPUSHTagsResponse in libjpush-ios-3.1.2.a(JPUSHTagsOperation.o)
"_JPUSHDecodeDataFromBuffer", referenced from:
-[JPUSHAliasResponse initWithBuffer:length:] in libjpush-ios-3.1.2.a(JPUSHAliasOperation.o)
-[JPUSHTagsResponse initWithBuffer:length:] in libjpush-ios-3.1.2.a(JPUSHTagsOperation.o)
"_OBJC_CLASS_$_JPUSHReportRequest", referenced from:
_OBJC_CLASS_$_JPUSHMessageReportRequest in libjpush-ios-3.1.2.a(JPUSHMessageReport.o)
_OBJC_CLASS_$_JPUSHBadgeNumberReportRequest in libjpush-ios-3.1.2.a(JPUSHBadgeNumberReport.o)
"_OBJC_IVAR_$_JPUSHRequest._packetData", referenced from:
-[JPUSHAliasRequest packData] in libjpush-ios-3.1.2.a(JPUSHAliasOperation.o)
-[JPUSHTagsRequest packData] in libjpush-ios-3.1.2.a(JPUSHTagsOperation.o)
-[JPUSHUserPropertyRequest packData] in libjpush-ios-3.1.2.a(JPUSHUserProperty.o)
-[JPUSHSetTagAlias packData] in libjpush-ios-3.1.2.a(JPUSHSetTagAlias.o)
"_JPUSHConvertTokenDataToString", referenced from:
-[JPUSHDeviceTokenController judgeAndSetDeviceToken:] in libjpush-ios-3.1.2.a(JPUSHDeviceTokenController.o)
"_JPUSHJSONData", referenced from:
-[JPUSHAliasRequest packData] in libjpush-ios-3.1.2.a(JPUSHAliasOperation.o)
-[JPUSHTagsRequest packData] in libjpush-ios-3.1.2.a(JPUSHTagsOperation.o)
-[JPUSHBadgeNumberReportRequest packetData] in libjpush-ios-3.1.2.a(JPUSHBadgeNumberReport.o)
-[JPUSHSetTagAlias requestJsonData] in libjpush-ios-3.1.2.a(JPUSHSetTagAlias.o)
"_JPUSHJSONObject", referenced from:
-[JPUSHClientController handleMessage:] in libjpush-ios-3.1.2.a(JPUSHClientController.o)
-[JPUSHClientController decodeGeofenceMessage:] in libjpush-ios-3.1.2.a(JPUSHClientController.o)
-[JPUSHAliasResponse initWithBuffer:length:] in libjpush-ios-3.1.2.a(JPUSHAliasOperation.o)
-[JPUSHTagAlias doSetTagsAliasCallbackWithRetJson:] in libjpush-ios-3.1.2.a(JPUSHTagAlias.o)
-[JPUSHTagsResponse initWithBuffer:length:] in libjpush-ios-3.1.2.a(JPUSHTagsOperation.o)
"_OBJC_METACLASS_$_JPUSHReceivedPacketController", referenced from:
_OBJC_METACLASS_$_JPUSHAliasResponse in libjpush-ios-3.1.2.a(JPUSHAliasOperation.o)
_OBJC_METACLASS_$_JPUSHTagsResponse in libjpush-ios-3.1.2.a(JPUSHTagsOperation.o)
"_OBJC_CLASS_$_JPUSHLog", referenced from:
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHService.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHClientController.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHGeofenceManager.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHLocalNotificationController.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHBadgeNumberController.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHDeviceTokenController.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHTagAlias.o)
...
"_JCOREIntVersion", referenced from:
___92+[JPUSHService commonSetupWithOption:appKey:channel:apsForProduction:advertisingIdentifier:]_block_invoke in libjpush-ios-3.1.2.a(JPUSHService.o)
"_OBJC_CLASS_$_JCOREInterface", referenced from:
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHService.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHClientController.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHSetTagAliasArg.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHBadgeNumberController.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHDeviceTokenController.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHTagAlias.o)
objc-class-ref in libjpush-ios-3.1.2.a(JPUSHTagAliasManagerController.o)
...
"_kJPFNetworkDidRegisterNotification", referenced from:
-[RCTJPushModule init] in RCTJPushModule.o
"_JCORECheckFormatOfMobileNumber", referenced from:
-[JPUSHService setMobileNumber:completion:] in libjpush-ios-3.1.2.a(JPUSHService.o)
"_kJPFNetworkDidSetupNotification", referenced from:
-[RCTJPushModule init] in RCTJPushModule.o
"_kJPFNetworkDidReceiveMessageNotification", referenced from:
-[RCTJPushModule init] in RCTJPushModule.o
"_OBJC_METACLASS_$_JPUSHRequest", referenced from:
_OBJC_METACLASS_$_JPUSHAliasRequest in libjpush-ios-3.1.2.a(JPUSHAliasOperation.o)
_OBJC_METACLASS_$_JPUSHTagsRequest in libjpush-ios-3.1.2.a(JPUSHTagsOperation.o)
_OBJC_METACLASS_$_JPUSHUserPropertyRequest in libjpush-ios-3.1.2.a(JPUSHUserProperty.o)
_OBJC_METACLASS_$_JPUSHSetTagAlias in libjpush-ios-3.1.2.a(JPUSHSetTagAlias.o)
"_OBJC_CLASS_$_JPUSHResponse", referenced from:
_OBJC_CLASS_$_JPUSHUserPropertyResponse in libjpush-ios-3.1.2.a(JPUSHUserProperty.o)
"_kJPFNetworkIsConnectingNotification", referenced from:
-[RCTJPushModule init] in RCTJPushModule.o
"_OBJC_METACLASS_$_JPUSHResponse", referenced from:
_OBJC_METACLASS_$_JPUSHUserPropertyResponse in libjpush-ios-3.1.2.a(JPUSHUserProperty.o)
"_JCOREDisplayVersion", referenced from:
___92+[JPUSHService commonSetupWithOption:appKey:channel:apsForProduction:advertisingIdentifier:]_block_invoke in libjpush-ios-3.1.2.a(JPUSHService.o)
"_JPUSHBase64", referenced from:
-[JPUSHBadgeNumberReportRequest p_generateRequestHead] in libjpush-ios-3.1.2.a(JPUSHBadgeNumberReport.o)
"_JCOREGetBuildVersion", referenced from:
___92+[JPUSHService commonSetupWithOption:appKey:channel:apsForProduction:advertisingIdentifier:]_block_invoke in libjpush-ios-3.1.2.a(JPUSHService.o)
"_kJPFNetworkDidCloseNotification", referenced from:
-[RCTJPushModule init] in RCTJPushModule.o
-[RCTJPushModule reactJSDidload] in RCTJPushModule.o
"_kJPFNetworkDidLoginNotification", referenced from:
-[RCTJPushModule init] in RCTJPushModule.o
-[RCTJPushModule reactJSDidload] in RCTJPushModule.o
-[JPUSHClientController observeNotifications] in libjpush-ios-3.1.2.a(JPUSHClientController.o)
-[JPUSHClientController unobserveNotifications] in libjpush-ios-3.1.2.a(JPUSHClientController.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
podfile文件中的配置:
pod 'RNSVG', :path => '../node_modules/react-native-svg'
pod 'JPushRN', :path => '../node_modules/jpush-react-native'
工程结构: