Podspec链接二进制库

我正在尝试创build一个Podspec: https : //github.com/sincerely/shiplib-ios-framework

Pod Lint通过并将文件添加到项目中,但不链接二进制“Sincerely”文件。 当通过<Sincerely/filename.h>导入时,由于缺less文件导致示例项目生成失败

  Pod::Spec.new do |s| s.name = 'ShipLib' s.version = '1.4' ... s.source = { :git => 'https://github.com/sincerely/shiplib-ios-framework.git', :tag => 's.version.to_s' } s.library = 'Sincerely' s.source_files = 'Sincerely.framework','Sincerely.framework/Headers/*.h' s.resources = 'Sincerely.framework/Resources/*.{png,nib}' s.frameworks = 'AddressBook', 'AddressBookUI', 'SystemConfiguration', 'CoreTelephony' s.xcconfig = { 'LIBRARY_SEARCH_PATHS' => '$(PODS_ROOT)/ShipLib/' } end 

编辑:

 Pod::Spec.new do |s| s.name = 'ShipLib' s.version = '1.4' s.platform = :ios s.summary = 'Allow users to send printed photos from your app.' s.author = { 'Sincerely' => 'dev@sincerely.com' } s.homepage = 'https://github.com/sincerely/shiplib-ios-framework' s.license = { :file => 'LICENSE', :type => 'Commercial' } s.source = { :git => 'https://github.com/sincerely/shiplib-ios-framework.git', :tag => 's.version.to_s' } s.frameworks = 'AddressBook', 'AddressBookUI', 'SystemConfiguration', 'CoreTelephony' s.ios.vendored_frameworks = 'Sincerely.framework' end 

不会为框架复制标题,也不应将其指定为源文件。 如果你想要做的就是把框架添加为vendored_framework 。 这在CP 0.23.0中是新的。

从文档

  spec.ios.vendored_frameworks = 'Frameworks/MyFramework.framework' 

编辑:
s.source_files删除所有关于.framework的东西。 源文件只是文件,而不是框架。

我想你的项目可能缺乏Sincerely.framework中的Sincerely库。 如果你使用sourcetree来pipe理项目,那么这就是造成这个问题的源码树的bug。 Sourcetree不检测Sincerely库。