ios-ntp 与 Xcode 7 和 swift 2.0
ios-ntp with Xcode 7 and swift 2.0
我正在尝试将 ios-ntp 集成到我使用 Xcode 7、swift 2.0 和 cocoapods 开发的项目中。我正在将库添加为 pod。但是当我尝试将 <ios-ntp/ios-ntp.h>
添加到我的应用程序时-BridigingHeader.h,Xcode 无法识别它。当我尝试简单地导入模块并按 #import ios_ntp
使用它时; Xcode 抱怨他无法构建模块 'ios_ntp'。我做错了吗?
更新。实际上 Xcode 由于错误
无法构建模块
'GCDAsyncUdpSocket.h' file not found
但该框架存在并作为依赖添加到 'ios-ntp' pod 规范中。
您不需要 #import
桥接 header 中的库,Cocoapods 应该负责让您的 pods 在 [=32= 中可用].
在您的 Swift 文件中,您是否尝试过 import ios_ntp
导入库?
编辑:我想我明白了。不能 100% 确定为什么会发生这种情况,但我的直觉是它与 Cocoapods 和 ios-ntp 对 CocoaAsyncSocket 的依赖有关。 ios-ntp 对 CocoaAsyncSocket header 的导入造成了循环依赖,这让 ios-ntp 的构建变得乏味。
解决方法:
https://github.com/ruddct/ios-ntp 应该可以解决问题,该分支包含一些非常小的 header 更改以在 ios-ntp 的 header 中转发声明 CocoaAsyncSocket 内容,这解决了问题。
有关此问题的更多背景信息,请参阅 How to prevent circular reference when Swift bridging header imports a file that imports Hopscotch-Swift.h itself。
当您使用 Pods 时,您必须:
- 打开Pods.xcodeproj
- 在目标中 select ios-ntp
- Select 'Build Phases' 选项卡
- 将 GCDAsyncSocket.h 和 GCDAsyncUDPSocket.h 添加到编译源和 Headers
- 记得在ios-ntp
中将'Allow Non-modular includes in Framework Modules'设为是
对我来说,这行得通。
我正在尝试将 ios-ntp 集成到我使用 Xcode 7、swift 2.0 和 cocoapods 开发的项目中。我正在将库添加为 pod。但是当我尝试将 <ios-ntp/ios-ntp.h>
添加到我的应用程序时-BridigingHeader.h,Xcode 无法识别它。当我尝试简单地导入模块并按 #import ios_ntp
使用它时; Xcode 抱怨他无法构建模块 'ios_ntp'。我做错了吗?
更新。实际上 Xcode 由于错误
无法构建模块'GCDAsyncUdpSocket.h' file not found
但该框架存在并作为依赖添加到 'ios-ntp' pod 规范中。
您不需要 #import
桥接 header 中的库,Cocoapods 应该负责让您的 pods 在 [=32= 中可用].
在您的 Swift 文件中,您是否尝试过 import ios_ntp
导入库?
编辑:我想我明白了。不能 100% 确定为什么会发生这种情况,但我的直觉是它与 Cocoapods 和 ios-ntp 对 CocoaAsyncSocket 的依赖有关。 ios-ntp 对 CocoaAsyncSocket header 的导入造成了循环依赖,这让 ios-ntp 的构建变得乏味。
解决方法: https://github.com/ruddct/ios-ntp 应该可以解决问题,该分支包含一些非常小的 header 更改以在 ios-ntp 的 header 中转发声明 CocoaAsyncSocket 内容,这解决了问题。
有关此问题的更多背景信息,请参阅 How to prevent circular reference when Swift bridging header imports a file that imports Hopscotch-Swift.h itself。
当您使用 Pods 时,您必须:
- 打开Pods.xcodeproj
- 在目标中 select ios-ntp
- Select 'Build Phases' 选项卡
- 将 GCDAsyncSocket.h 和 GCDAsyncUDPSocket.h 添加到编译源和 Headers
- 记得在ios-ntp 中将'Allow Non-modular includes in Framework Modules'设为是
对我来说,这行得通。