I had to reinstall Mac OS X Mavericks on my laptop. Now npm does not work. However, node is still on the laptop and npm is in the $PATH.
christohersmbp3:angular-phonecat christopherspears$ npm install
-bash: npm: command not found
christohersmbp3:angular-phonecat christopherspears$ node --version
v0.10.26
christohersmbp3:angular-phonecat christopherspears$ npm start
-bash: npm: command not found
christohersmbp3:angular-phonecat christopherspears$ echo $PATH
/usr/local/share/python:/Users/christopherspears/.rbenv/bin:/Users/christopherspears/bin:/usr/local/heroku/bin:/usr/local/share/npm/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin
I was actually able to get node running fairly easily:
christohersmbp3:~ christopherspears$ node
> console.log('hello node');
hello node
undefined
>
(^C again to quit)
>
Any ideas on how to fix this or should I just reinstall Node.js?
UPDATE:
I have been trying to uninstall and reinstall Node.js but ran into a problem:
christohersmbp3:angular-phonecat christopherspears$ brew uninstall node
Uninstalling /usr/local/Cellar/node/0.10.26...
christohersmbp3:angular-phonecat christopherspears$ brew install node
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/node-0.10.26.mavericks.bottle.tar.gz
######################################################################## 100.0%
==> Pouring node-0.10.26.mavericks.bottle.tar.gz
==> Caveats
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
You can try again using:
brew link node
Possible conflicting files are:
/usr/local/bin/node
/usr/local/include/node/zlib.h
/usr/local/include/node/zconf.h
/usr/local/include/node/v8stdint.h
/usr/local/include/node/v8.h
/usr/local/include/node/v8-testing.h
/usr/local/include/node/v8-profiler.h
/usr/local/include/node/v8-preparser.h
/usr/local/include/node/v8-debug.h
/usr/local/include/node/uv.h
/usr/local/include/node/uv-private/uv-win.h
/usr/local/include/node/uv-private/uv-unix.h
/usr/local/include/node/uv-private/uv-sunos.h
/usr/local/include/node/uv-private/uv-linux.h
/usr/local/include/node/uv-private/uv-darwin.h
/usr/local/include/node/uv-private/uv-bsd.h
/usr/local/include/node/uv-private/tree.h
/usr/local/include/node/uv-private/stdint-msvc2008.h
/usr/local/include/node/uv-private/ngx-queue.h
/usr/local/include/node/openssl/opensslconf.h
/usr/local/include/node/node_version.h
/usr/local/include/node/node_object_wrap.h
/usr/local/include/node/node_internals.h
/usr/local/include/node/node_buffer.h
/usr/local/include/node/node.h
/usr/local/include/node/nameser.h
/usr/local/include/node/config.gypi
/usr/local/include/node/common.gypi
/usr/local/include/node/ares_version.h
/usr/local/include/node/ares.h
/usr/local/share/man/man1/node.1
/usr/local/lib/dtrace/node.d
Warning: The post-install step did not complete successfully
You can try again using `brew postinstall node`
==> Summary
🍺 /usr/local/Cellar/node/0.10.26: 1523 files, 18M
christohersmbp3:angular-phonecat christopherspears$ brew link node
Linking /usr/local/Cellar/node/0.10.26...
Error: Could not symlink bin/node
Target /usr/local/bin/node
already exists. You may want to remove it:
rm /usr/local/bin/node
To force the link and overwrite all conflicting files:
brew link --overwrite node
To list all files that would be deleted:
brew link --overwrite --dry-run node
christohersmbp3:angular-phonecat christopherspears$ brew link --overwrite node
Linking /usr/local/Cellar/node/0.10.26... 135 symlinks created
christohersmbp3:angular-phonecat christopherspears$ brew postinstall node
Error: Permission denied - /usr/local/lib/node_modules/npm/AUTHORS
I took a look in the folder:
christohersmbp3:npm christopherspears$ pwd
/usr/local/lib/node_modules/npm
christohersmbp3:npm christopherspears$ ll
total 112
-rw-r--r-- 1 24561 staff 5759 Feb 18 14:59 AUTHORS
-rw-rw-r-- 1 24561 staff 380 Feb 18 14:59 CONTRIBUTING.md
-rw-r--r-- 1 24561 staff 9862 Feb 18 14:59 LICENSE
-rw-r--r-- 1 24561 staff 6178 Jan 28 19:21 Makefile
-rw-r--r-- 1 24561 staff 7623 Feb 18 14:59 README.md
drwxr-xr-x 7 christopherspears staff 238 Apr 6 15:54 bin/
-rwxr-xr-x 1 24561 staff 48 Jan 28 19:21 cli.js*
-rwxr-xr-x 1 24561 staff 521 Jan 28 19:21 configure*
drwxr-xr-x 6 christopherspears staff 204 Mar 7 22:32 doc/
drwxr-xr-x 9 christopherspears staff 306 Apr 6 15:54 html/
drwxr-xr-x 55 christopherspears staff 1870 Apr 6 15:54 lib/
-rw-rw-r-- 1 24561 staff 156 Jan 28 19:21 make.bat
drwxr-xr-x 6 christopherspears staff 204 Mar 7 22:32 man/
drwxr-xr-x 51 christopherspears staff 1734 Mar 7 22:32 node_modules/
-rw-r--r-- 1 24561 staff 3449 Feb 18 14:59 package.json
drwxr-xr-x 8 christopherspears staff 272 Apr 6 15:54 scripts/
drwxr-xr-x 9 24561 staff 306 Apr 6 15:54 test/
Should I change the owner from 24561 to christopherspears?
UPDATE:
I did change the owner of the AUTHORS file to christopherspears. Now I am getting this error:
christohersmbp3:angular-phonecat christopherspears$ brew postinstall node
Error: Permission denied - /usr/local/lib/node_modules/npm/bin/node-gyp-bin/node-gyp
Looks like the same issue:
christohersmbp3:node-gyp-bin christopherspears$ ll
total 16
-rwxr-xr-x 1 24561 staff 89 Jan 28 19:21 node-gyp*
-rwxr-xr-x 1 24561 staff 61 Jan 28 19:21 node-gyp.cmd*
Am I going to have to do this for all of the files owned by 24561? I hope not.
UPDATE:
Ugh. So lame. Looks like I am being asked to change the owner from 24561 to my username everywhere. Why was the owner set to 24561 in the first place?
将所有者从24561更改为我的用户名后,我得到了npm工作。
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.