I cannot understand why the Cocoapod is unable to find the pod specification I created when I run pod install
. Could someone help me solve this trouble?
I'm defining a subspec in my library podspec file like this:
s.subspec 'mysubspec' do |c| c.dependency 'ABC','1.0.0' end
This dependency ABC is listed in the library Podfile:
pod 'ABC', :git => '[email protected]:myrepo/Podspecs.git', :branch => 'xyz'
The Podspec file ABC.podspec
in the branch xyz of myrepo/Podspecs seems like this:
Pod::Spec.new do |s| s.name = "ABC" s.version = "1.0.0" s.source = { :git => "[email protected]:myrepo/Podspecs.git", :branch => "xyz" } end
The error is [!] Unable to find a specification for ABC (= 1.0.0)
Solution: import the pod ABC before importing the subspec and add the tag to the podspec.
A Podspec, or Spec, describes a version of a Pod library. One Pod, over the course of time, will have many Specs. It includes details about where the source should be fetched from, what files to use, the build settings to apply, and other general metadata such as its name, version, and description.
When you run pod update PODNAME , CocoaPods will try to find an updated version of the pod PODNAME , without taking into account the version listed in Podfile. lock . It will update the pod to the latest version possible (as long as it matches the version restrictions in your Podfile ).
I suppose that there is a problem with your pod master repo. Delete it and download it again.
You can do:
pod repo remove master pod setup pod install
Or:
sudo rm -fr ~/.cocoapods/repos/master pod setup pod install
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With