27

I have successfully installed brew, node 4.0+, watchman and flow, and I received the following when I do npm install -g react-native-cli:

/Users/home/.node/bin/react-native -> /Users/home/.node/lib/node_modules/react-native-cli/index.js
[email protected] /Users/home/.node/lib/node_modules/react-native-cli
           └── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])

So I assume react-native-cli has been successfully installed as well. However when I run react-native, it says:

-bash: react-native: command not found

My node version is 4.2.1, watchman 3.9, brew 0.9.5 (git 7ed6) and npm 2.14.7

3

8 Answers 8

37

You have to make sure /usr/local/share/npm/bin is in your PATH to use binaries installed with npm.

Add the following to your ~/.bashrc:

export PATH="/usr/local/share/npm/bin:$PATH"

And reload your shell session.


If you find you don’t have a /usr/local/share/npm/bin directory, your npm may install its packages in another location. In this case you have to use the right path in the line above.

One solution to find that path is to run:

npm list -g | head -n 1

This gives you the path where npm install its packages. This is not the path you want but it’s close. For example on my Linux it gives /home/baptiste/.linuxbrew/lib; it suffices to replace lib with bin to get the correct path:

export PATH="/home/baptiste/.linuxbrew/bin:$PATH"

You can use $HOME to get your own home directory:

export PATH="$HOME/.linuxbrew/bin:$PATH"
5
  • 5
    I've run export PATH="$HOME/.node/bin:$PATH" on the terminal, worked perfect. Thanks! Commented Oct 22, 2015 at 16:50
  • there is no /usr/local/share/npm/bin path although I had react-native-cli installed.
    – wzso
    Commented Jul 10, 2017 at 2:27
  • 1
    @zssr I updated my answer to include a way to find the correct directory.
    – bfontaine
    Commented Jul 10, 2017 at 8:54
  • 2
    This solution worked for me stackoverflow.com/a/48638712/1390678
    – vijay
    Commented Jun 6, 2018 at 8:31
  • In my case on Mac 10.13.5, npm list -g | head -n 1 gave result as /usr/local/lib. So I added export PATH="/usr/local/lib:$PATH" to .bash_profile to get this working
    – vikramvi
    Commented Aug 29, 2018 at 14:14
22

I tried many ways to work out a solution to this on my mac(node -v: v8.1.3, npm -v: 5.0.3). And when I ran npm install -g react-native-cli, the output was this:

/Users/xxx/.npm-packages/bin/react-native -> /Users/xxx/.npm-packages/lib/node_modules/react-native-cli/index.js + [email protected] updated 1 package in 2.988s

As you can see react-native was install in /Users/xxx/.npm-packages/bin/, different from what others may say. So I pasted the line export PATH=/Users/xxx/.npm-packages/bin:$PATH to my ~/.profile and opened a new Terminal window to run react-native. It worked!

3
  • It works for me, thank you, but is there any document indicating the root reason?
    – Rui Geng
    Commented Sep 7, 2017 at 4:25
  • Thank you for your great answer! It finally works for me!
    – yihan
    Commented Sep 25, 2018 at 15:42
  • Thank you very much brother, I was trying many solutions, but it was not working. This also I tried but enclosed the value with double quote like this (export PATH="/Users/xxx/.npm-packages/bin:$PATH"). After removing double quote, it worked Commented Sep 27, 2023 at 15:45
11

First of all, you have to install react native globally

npm install -g react-native-cli

then it will show you the path for the react native like the following

/Users/{yourUser}/.npm-packages/bin/react-native -> /Users/{yourUser}/.npm-packages/lib/node_modules/react-native-cli/index.js

Then you have to set the default path from the above result and execute the following command

export PATH="/Users/{yourUser}/.npm-packages/bin/:$PATH"

or

export PATH="$HOME/.npm-packages/bin:$PATH"

Then reload you session/env vairables

source ~/.bash_profile

It works for me .... cheers

thanks

1
  • If you are getting Error: EACCES: permission denied, access '/usr/local/lib/node_modules' issue then try sudo npm install -g react-native-cli to install the packages
    – Rama
    Commented Apr 8, 2020 at 0:23
2

Step 1 .

terminal fire : npm install -g react-native-cli

output: 

/usr/local/Cellar/node/13.3.0/bin/react-native -> /usr/local/Cellar/node/13.3.0/lib/node_modules/react-native-cli/index.js
+ [email protected]
updated 1 package in 4.544s

Step 2: export the path

  export PATH="/usr/local/Cellar/node/13.3.0/bin:$PATH"
0

It's easy!

Just run npm i -g react-native-cli then restart your cmd.

0

export PATH="$HOME/.npm-packages/bin:$PATH" worked for me however, I had to replace packages with what was on my mac.

i.e .npm-global instead of .npm-packages. ..

0

Step 1 .

terminal fire : npm install -g react-native-cli output: /usr/local/Cellar/node/6.1.0/libexec/npm/bin/react-native ->/usr/local/Cellar/node/6.1.0/libexec/npm/lib/node_modules/react-native-cli/index.js/usr/local/Cellar/node/6.1.0/libexec/npm/lib └── [email protected]

-4
sudo npm install -g react-native-cli
1

Not the answer you're looking for? Browse other questions tagged or ask your own question.