329

I installed pod some time ago. However, it's stopped working so I'm working through this again.

However, I almost immediately run into a problem here:

pod install
-bash: pod: command not found

Any suggestions why this happened?

Paresh Mangukiya
  • 37,512
  • 17
  • 201
  • 182
Snowcrash
  • 73,844
  • 72
  • 228
  • 347

25 Answers25

585

OK, found the problem. I upgraded Ruby some time ago and blasted away a whole load of gems. Solution:

sudo gem install cocoapods

For none-sudo use:

export GEM_HOME=$HOME/.gem
export PATH=$GEM_HOME/bin:$PATH
gem install cocoapods --user-install
Snowcrash
  • 73,844
  • 72
  • 228
  • 347
  • 7
    if "$ sudo gem install cocoapods" does not work for you with error installing cocoapods: activesupport requires Ruby version >= 2.2.2 then see this answer http://stackoverflow.com/questions/32871329/error-installing-google-analytics-on-ios-app/38373354#38373354 – Martin Belcher - AtWrk Jul 15 '16 at 08:33
  • 9
    Why sudo is needed here ? isn't it bad practice to install with sudo ? – vikramvi Sep 01 '17 at 09:25
  • 5
    Yes, you don't have to use *sudo*, see below https://stackoverflow.com/a/47333482/1158376 – Per Quested Aronsson Nov 16 '17 at 15:31
95

Installing CocoaPods on OS X 10.11

These instructions were tested on all betas and the final release of El Capitan.

Custom GEM_HOME

This is the solution when you are receiving above error

$ mkdir -p $HOME/Software/ruby
$ export GEM_HOME=$HOME/Software/ruby
$ gem install cocoapods
[...]
1 gem installed
$ export PATH=$PATH:$HOME/Software/ruby/bin
$ pod --version
0.38.2
Babul Prabhakar
  • 2,242
  • 16
  • 25
  • Did not work for me. When I try "gem install cocopods" I get the error "activesupport requires Ruby version >= 2.2.2." – Zvi Sep 09 '16 at 22:20
84

This Step Is Proper Working.

Pod Install

[ 1 ] Open terminal and type:

sudo gem install cocoapods

Gem will get installed in Ruby inside the System library. Or try on 10.11 Mac OSX El Capitan, type:

sudo gem install -n /usr/local/bin cocoapods

If there is an error "activesupport requires Ruby version >= 2.xx", then install the latest active support first by typing in the terminal.

sudo gem install activesupport -v 4.2.6

[ 2 ] After installation, there will be a lot of messages, read them and if no error found, it means cocoa pod installation is done. Next, you need to set up the cocoa pod master repo. Type in terminal:

pod setup

And wait it will download the master repo. The size is very big (370.0MB in Dec 2016). So it can be a while. You can track the download by opening Activity and go to the Network tab and search for git-remote-https. Alternatively, you can try adding verbose to the command like so:

pod setup --verbose

[ 3 ] Once done it will output "Setup Complete", and you can create your XCode project and save it.

[ 4 ] Then in a terminal cd to "your XCode project root directory" (where your .xcodeproj file resides) and type:

pod init

[ 5 ] Then open your project's podfile by typing in terminal:

open -a Xcode Podfile

[ 6 ] Your Podfile will get open in text mode. Initially, there will be some default commands in there. Here is where you add your project's dependencies. For example, in the podfile, type

/****** These are Third party pods names ******/
pod 'OpenSSL-Universal'
pod 'IQKeyboardManager'
pod 'FTPopOverMenu'
pod 'TYMActivityIndicatorView'
pod 'SCSkypeActivityIndicatorView'
pod 'Google/SignIn'
pod 'UPStackMenu'

(this is For example of adding library to your project).

When you are done editing the podfile, save it and close XCode.

[ 7 ] Then install pods into your project by typing in terminal:

pod install

Depending on how many libraries you added to your podfile for your project, the time to complete this varies. Once completed, there will be a message that says

"Pod installation complete! There are X dependencies from the Podfile and X total pods installed."

Paresh Mangukiya
  • 37,512
  • 17
  • 201
  • 182
saurabh rathod
  • 974
  • 6
  • 7
54

You have to restart Terminal after installing the gem. Or you can simply open a new tab Terminal to fix.

Shaheen Ghiassy
  • 7,037
  • 3
  • 38
  • 40
51

For macOS:

brew install --cask cocoapods

Original answer (outdated):

brew install cocoapods
brew cask install cocoapods-app
HappyFace
  • 2,491
  • 1
  • 21
  • 31
16

I had the same problem, running Mountain Lion with Ruby 2 installed and used instead of system ruby.

Previously I added PATH=/usr/local/bin:$PATH to my ~/.bash_profile as a way to make sure stuff installed by homebrew, including Ruby 2, took precedence over system-installed binaries.

Anyway, in this case I noticed that cocoapods would install their 'pod' binary not in /usr/local/bin but rather in /usr/local/Cellar/ruby/2.0.0-p247/bin/

So to my .bash_profile I added PATH=$PATH:/usr/local/Cellar/ruby/2.0.0-p247/bin/ and now cocoapods is working like a charm.

Alex Gray
  • 15,328
  • 9
  • 93
  • 115
gterzian
  • 527
  • 6
  • 5
  • I do not have this path file what should I do to follow? – Nickool Oct 13 '13 at 09:49
  • I'm pretty sure you should have a .bash_profile, you can't normally see it because of the . in front of the file name. do first a plain `cd` in your terminal to go back to your home dir followed b a `ls -a`, you should see all your files including a bash_profile – gterzian Oct 16 '13 at 20:59
  • 1
    Thanks for tip. I soft linked the pod executable to /usr/local/bin, now everythings seem to be ok. – David Oct 16 '13 at 23:25
  • 1
    It is not ideal to hardcode the ruby version into the PATH. See this answer for how to do this generically: http://stackoverflow.com/a/14138490/1531256 – codingFriend1 Jan 22 '14 at 13:20
15

for M1mac people first install cocoapods

brew install cocoapods  

and if you are doing this for ios react-native

pod install
Paras
  • 160
  • 1
  • 5
14
  1. Uninstall all instances of cocopods by this command

    $sudo gem uninstall cocoapods
    
  2. sudo gem install -n /usr/local/bin cocoapods

  3. sudo chmod +rx /usr/local/bin/

Luka Kerr
  • 3,971
  • 6
  • 34
  • 47
Shaheen
  • 161
  • 1
  • 5
12

try: rbenv global system and then sudo gem install cocoapods pod setup

Allen
  • 6,637
  • 5
  • 40
  • 56
12

Try this:

sudo gem install cocoapods -V

and you must update gem to the newest release using this:

sudo gem update --system 

if you want to enjoy the fast responce :)

Mohsin
  • 1,547
  • 1
  • 22
  • 44
12

Sudo-less installation

If you do not want to grant RubyGems admin privileges for this process, you can tell RubyGems to install into your user directory by passing either the --user-install flag to gem install or by configuring the RubyGems environment. The latter is in our opinion the best solution. To do this, create or edit the .profile file in your home directory and add or amend it to include these lines:

export GEM_HOME=$HOME/.gem
export PATH=$GEM_HOME/bin:$PATH

Note that if you choose to use the --user-install option, you will still have to configure your .profile file to set the PATH or use the command prepended by the full path. You can find out where a gem is installed with gem which cocoapods. E.g.

$ gem install cocoapods --user-install
$ gem which cocoapods
/Users/eloy/.gem/ruby/2.0.0/gems/cocoapods-0.29.0/lib/cocoapods.rb
$ /Users/eloy/.gem/ruby/2.0.0/bin/pod install

Source: https://guides.cocoapods.org/using/getting-started.html

Per Quested Aronsson
  • 10,404
  • 8
  • 51
  • 74
8

In terminal it's better to run installation of the cocoa pods with "sudo". In other case I'm getting an error: "You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory."

So the solution is:

sudo gem install cocoapods
user1195202
  • 1,403
  • 1
  • 15
  • 20
6

so I also had the same problem. This is probably happening because your computer has an older version of ruby. So you need to first update your ruby. Mine worked for ruby 2.6.3 version.I got this solution from sStackOverflow,

You need to first open terminal and put this code

curl -L https://get.rvm.io | bash -s stable

Then put this command

rvm install ruby-2.6

This would install the ruby for you if it hasn' t been installed.After this just update the ruby to the new version

rvm use ruby-2.6.3

After this just make ruby 2.6.3 your default

rvm --default use 2.6.3

This would possibly fix your issue. You can now put the command

sudo gem install cocoapods

And the command

pod setup

I hope this was useful

Ayush Kovind
  • 61
  • 1
  • 3
3

This solution worked for me. Make sure to not miss the last command (export PATH=$PATH:$HOME/Software/ruby/bin).

See This.

itzmebibin
  • 8,738
  • 7
  • 46
  • 59
naveed148
  • 538
  • 5
  • 8
3

install cocoapods from https://cocoapods.org/app

Commands & versions keep onchanging

so download tar and enjoy

vijay
  • 9,053
  • 8
  • 59
  • 72
2

gterzian is on the right track, however, if you later update your version of ruby then you'll also have to update your .profile to point to the new versioned ruby directory. For instance, the current version of ruby is 2.0.0-p353 so you'd have to add /usr/local/Cellar/ruby/2.0.0-p353/bin to your path instead.

A better solution is to add /usr/local/opt/ruby/bin to your PATH. /usr/local/opt/ruby is actually a symlink to the current version of ruby that homebrew automatically updates when you do an upgrade. That way you'll never need to update your PATH and always be pointing to the latest version.

Koppacetic
  • 81
  • 3
2

If you used homebrew to install ruby, this answer worked for me.

brew unlink ruby && brew link ruby

OSX 10.9.4

Community
  • 1
  • 1
YPCrumble
  • 23,822
  • 20
  • 95
  • 160
2

it happens to me when I wrote

gem install cocoapods

instead of

sudo gem install cocoapods

if sudo command is not found also, write

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$PATH

before sudo command

Nora
  • 167
  • 1
  • 3
  • 14
2

@Babul Prabhakar was right

IMPORTANT: However,if you still get "pod: command not found" after using his solution, this command could solve your problem:

sudo chown -R $(whoami):admin /usr/local
itzmebibin
  • 8,738
  • 7
  • 46
  • 59
SomnusLee
  • 391
  • 5
  • 17
1

The best solution for Big Sur is posted on Redit by _fgmx

Go into Xcode 12 preferences Click locations Select Xcode 12 for Developer tools/command line tools Install cocoapods for Xcode 12: sudo gem install cocoapods

1

Please remove the Ruby folder from -Your Disk->Library->Ruby Deleting this folder and use sudo gem install cocoapods command to solve my issue. enter image description here

Gurpreet Singh
  • 663
  • 6
  • 14
1

This worked for me

sudo apt-get install ruby-dev
sudo gem install cocoapods
Afzal Ali
  • 599
  • 5
  • 16
0

We were using an incompatible version of Ruby inside of Terminal (Mac), but once we used RVM to switch to Ruby 2.1.2, Cocoapods came back.

Crashalot
  • 32,144
  • 59
  • 256
  • 415
0

Install pod sudo gem install cocoapods

Navigate inside platforms/ios cd platforms/ios

Run pod install

0

I'm using OS Catalina and used the solution of Babul Prabhakar. But when I closed the terminal, pod still was unable.

So I put the exports:

$ export GEM_HOME=$HOME/Software/ruby
$ export PATH=$PATH:$HOME/Software/ruby/bin

inside this file(put this command below inside the terminal):

nano ~/.bash_profile

Then save the file, close the terminal and open it up again and type:

pod --version