Home » Ruby » Unable to find a specification in CocoaPods

Unable to find a specification in CocoaPods

Posted by: admin November 30, 2017 Leave a comment

Questions:

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.

Answers:

Instead of:

s.source       = { :git => "[email protected]:myrepo/Podspecs.git", :branch => "xyz" }

Write this:
Don’t forget the tag…

s.source       = { :git => "https://github.com/myrepo/Podspecs.git", :branch => "xyz",
                   :tag => s.version.to_s }

Questions:
Answers:

I suppose that there is a problem with your pod master repo. Delete ir 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

Questions:
Answers:

For me it was an issue with finding the spec, not the spec itself. I needed to add a source link to the Podfile, see Podfile documentation

Cocoapods recently added the need to link to the repo that holds the pod spec file you are looking for, the default is:

source 'https://github.com/CocoaPods/Specs.git'

You may need to add multiple source links if you are using more obscure or homemade pods.

Questions:
Answers:

I was getting similar error for MGBoxkit

[!] Unable to find a specification for MGBoxkit

By replacing the following line

pod 'MGBoxkit'

with

pod 'MGBoxKit'

fixed the issue.

Questions:
Answers:

Make sure you added

source 'https://github.com/CocoaPods/Specs.git'

at the very beginning of your Podfile

Questions:
Answers:

I resolve this after add

source '/Users/username/Documents/path/to/iOS_SpecsRepository'
source 'https://github.com/CocoaPods/Specs.git'

to Podfile.
well .I used a local repository as my Repo. So i can user this in another podspec file

s.dependency 'iOS_Networking_CPN', '~> 0.1.1'

iOS_Networking_CPN is in the local path.

Questions:
Answers:

With me, this worked like a charm.

pod repo remove master
pod setup

However, you may try directly, pod setup as some users pointed.

Questions:
Answers:

In my case I just update my cocoapods.

repo update master