我试图在swift中使用Hue SDK for iOS(iOS部署目标:9.3)。我已下载the source from github并按照说明操作..
let sdk = PHHueSDK()
醇>
已执行"清洁构建文件夹" 当我运行应用程序时,我收到以下错误消息:
架构x86_64的未定义符号:" _OBJC_CLASS _ $ _ DDLog", 引自:
objc-class-ref in HueSDK_iOS(PHBridgeVersionManager.o) objc-class-ref in HueSDK_iOS(PHAuthentication.o) objc-class-ref in HueSDK_iOS(PHHeartbeatProcessingLocal.o) objc-class-ref in HueSDK_iOS(PHCLIPWrapper.o) objc-class-ref in HueSDK_iOS(PHAuthenticationStorage.o) objc-class-ref in HueSDK_iOS(PHHueSDK.o) objc-class-ref in HueSDK_iOS(PHHttpRequester.o) ...
" _OBJC_CLASS _ $ _ DDTTYLogger",引自:
objc-class-ref in HueSDK_iOS(PHHueSDK.o)
ld:找不到架构x86_64的符号
clang:错误:链接器命令失败,退出
代码1(使用-v查看调用)
似乎我在将SDK链接到项目时遇到了问题。
我做错了什么?
我的问题似乎与此stack overflow thread有关。 我还添加了该线程中建议的SystemConfiguration.framework,但没有成功。
答案 0 :(得分:0)
DDLog是一种Lumberjack方法,因此链接器没有找到已编译的Lumberjack代码。
@Rapsefar,我按照上面使用7.3.1,9.3和当前的HueSDK_iOS.framework和Lumberjack文件夹完全按照上面的步骤创建了一个名为“HueSwiftiOS”的应用程序。它编译并运行没有问题。以下是我的桥接头文件的内容:
// HueSwiftiOS-Bridging-Header.h
#ifndef HueSwiftiOS_Bridging_Header_h
#define HueSwiftiOS_Bridging_Header_h
#import <HueSDK_iOS/HueSDK.h>
#endif
没有链接器错误和调用:
let sdk = PHHueSDK()
print("sdk initialized: \(sdk)")
报告:
sdk initialized: <PHHueSDK: 0x125645640>