使用pod lib lint的时候遇到library not found for XXX

我们构建自己的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" => "[email protected]" }

  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

你可能感兴趣的:(使用pod lib lint的时候遇到library not found for XXX)