Undefined symbols for architecture x86_64
报错如下
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_EZCloudRecordFile", referenced from:
objc-class-ref in EZRecordCell.o
objc-class-ref in EZMessagePlaybackViewController.o
"_OBJC_CLASS_$_EZDeviceRecordFile", referenced from:
objc-class-ref in EZMessagePlaybackViewController.o
"_OBJC_CLASS_$_EZOpenSDK", referenced from:
objc-class-ref in EZMessageListViewController.o
objc-class-ref in EZRecordCell.o
objc-class-ref in ViewController.o
objc-class-ref in EZMessagePlaybackViewController.o
objc-class-ref in MessageListCell.o
objc-class-ref in EZSettingViewController.o
objc-class-ref in EZCameraTableViewController.o
提示找不到Objectiv-C 的名为“EZCloudRecordFile” 的class, 而这个class 在EZRecordCell.o中被引用。
推测到这个class定义在汇编程序libEZOpenSDK.a 中。 但是这个文件点链接,不支持模拟器方式,只支持真机链接。
原因: 萤石驱动,仅仅支持iOS真机编译和调试。
解决办法, 把自己的iPhone连接到电脑上,再在XCode里run就编译成功。
附录
萤石开放平台
https://open.ys7.com/view/sdk/sdk.html