我们构建自己的pod的时候,在发表之前,往往需要使用pod lib lint
命令,来验证自己的库有没有问题。如果我们的pod库中带有.a静态库,那么我们有可能会遇到这样的错误提示:library not found for XXX
这种情况大部分都是因为静态库的命名出现了问题。在加载静态库的时候,Xcode会查找带有库名称和前缀“lib”
的文件。例如,如果您的库名为“XXX.a”
,Xcode将查找“libXXX.a”
,那么在加载库时就会失败。所以为了能够正确加载到我们的静态库,你必须要静态库命名为“libXXX.a”
,这样就能够找到它了。
这是我自己的一个.podspec
示范
Pod::Spec.new do |s|
s.name = "LMTP"
s.version = "0.0.1"
s.homepage = 'https://github.com/zhoushaowen/LMTP'
s.ios.deployment_target = '8.0'
s.summary = "胎心检测"
s.license = { :type => 'MIT', :file => 'LICENSE' }
s.author = { "Zhoushaowen" => "348345883@qq.com" }
s.source = { :git => "https://github.com/zhoushaowen/LMTP.git", :tag => s.version }
s.source_files = "LMTP/*.{h,m}","LMTP/UI/*.{h,m}","LMTP/lame"
s.vendored_libraries = 'LMTP/libLMTPDecoder.a'
s.frameworks = "CoreBluetooth"
s.dependency 'Masonry'
s.requires_arc = true
end
网友评论