2017-01-30 164 views
1

当再现步步这个this original exampleRCTMapboxGL (5.1.0)我碰上与链接错误。这发生在我身上我每次尝试使用RCTMapboxGL时间。阵营,本机Mapbox-GL无法链接

我试用过:

Xcode的控制台:

Duplicate definition

Xcode的控制台:

Undefined symbols for architecture arm64: 
    "_OBJC_CLASS_$_RCTMapboxAnnotation", referenced from: 
     objc-class-ref in libRCTMapboxGL.a(RCTMapboxGL.o) 
ld: symbol(s) not found for architecture arm64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

丢失的符号RCTMapboxAnnotation../node_modules/react-native-mapbox-gl/ios/RCTMapboxGL.xcodeproj,它已添加到我的项目作为参考。

RCTMapboxAnnotation

在Xcode其它链接器标记构建设置

Other Linker Flags in Xcode Build Settings

回答

1

我的解决办法固定所有阵营横跨MapboxGL库导入语句。

把他们变成全球进口的形式#import <React/MissingClass.h>解决了这个问题:

例如#import RCTView.h#import <React/RCTView.h>

(9个文件总数):

RCTMapboxAnnotation.m

#import "RCTMapboxAnnotation.h" 
#import <React/RCTEventDispatcher.h> 
#import <React/UIView+React.h> 
#import <React/RCTBridge.h> 
#import <React/RCTUtils.h> 

RCTMapboxAnnotation.h

#import "RCTMapboxAnnotation.h" 
#import <MapBox/MapBox.h> 
#import <UIKit/UIKit.h> 
#import <React/RCTConvert+MapKit.h> 
#import <React/RCTComponent.h> 
#import "RCTMapboxGL.h" 

RCTMapboxAnnotationManager.m

#import "RCTMapboxAnnotationManager.h" 
#import <React/RCTUIManager.h> 
#import <React/RCTConvert+CoreLocation.h> 
#import <React/UIView+React.h> 
#import "RCTMapboxAnnotation.h" 

RCTMapboxAnnotationManager.h

#import <React/RCTViewManager.h> 

RCTMapboxGL.h

#import <Mapbox/Mapbox.h> 
#import <React/RCTView.h> 
#import <React/RCTEventDispatcher.h> 
#import <React/RCTBridgeModule.h> 

RCTMapboxGL.m

#import "RCTMapboxGL.h" 
#import <React/RCTBridgeModule.h> 
#import <React/RCTEventDispatcher.h> 
#import <React/UIView+React.h> 
#import <React/RCTLog.h> 
#import "RCTMapboxGLConversions.h" 
#import "RCTMapboxAnnotation.h" 

RCTMapboxGLManager.h

#import <React/RCTViewManager.h> 

RCTMapboxGLManager.m

#import "RCTMapboxGLManager.h" 
#import "RCTMapboxGL.h" 
#import <Mapbox/Mapbox.h> 
#import <React/RCTConvert+CoreLocation.h> 
#import <React/RCTConvert+MapKit.h> 
#import <React/RCTBridge.h> 
#import <React/RCTEventDispatcher.h> 
#import <React/UIView+React.h> 
#import <React/RCTUIManager.h> 
#import "RCTMapboxGLConversions.h" 
#import "MGLPolygon+RCTAdditions.h" 
#import "MGLPolyline+RCTAdditions.h" 

RCTMapboxGLConversions.m

#import <Foundation/Foundation.h> 
#import <React/RCTConvert+CoreLocation.h> 
#import <React/RCTConvert+MapKit.h> 
#import "RCTMapboxGL.h" 
+0

这与固定在这个混帐问题注释的参考链接框架搜索路径为我工作一起:https://github.com/mapbox/反应母语-mapbox-GL /问题/ 297#issuecomment-247644647 – KinGBin