1

私はnode.jsを初めて使用し、ノードのWebサイトからインストールを実行してインストールしました。パッケージをグローバルにインストールする遊びがありましたが(たとえば、すべきです) 、次のように、タワーモジュールをMacにインストールしようとしています。

sudo npm install tower -g

たくさんのものをインストールしてからクラッシュし、出力が表示されます

npm http 304 https://registry.npmjs.org/tinycolor
npm http 304 https://registry.npmjs.org/zeparser/0.0.5

> ws@0.4.20 install /usr/local/lib/node_modules/tower/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
> node install.js

shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied

node.js:520
var cwd = process.cwd();
                  ^
Error: EACCES, permission denied
at Function.startup.resolveArgv0 (node.js:520:23)
at startup (node.js:54:13)
at node.js:611:3
npm ERR! ws@0.4.20 install: `node install.js`
npm ERR! `sh "-c" "node install.js"` failed with 11
npm ERR! 
npm ERR! Failed at the ws@0.4.20 install script.
npm ERR! This is most likely a problem with the ws package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node install.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls ws
npm ERR! There is likely additional logging output above.

私がそれを正しく読んだ場合、ws (websockets?) モジュールがクラッシュしています。

この問題を調査する際に、ブログで .bashrc にノード パスを追加するよう提案されたので、それを実行しました。

助言がありますか?

4

2 に答える 2

1

At this line:

ws@0.4.20 install /usr/local/lib/node_modules/tower/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws

We see that ws is install in /usr/local/lib, I need root to write here no ?

I'm using linux, it's maybe not the case in mac...

You should use sudo npm install -g tower or install Node.js with nvm. Nvm cares that modules are install in your home, so you do not need sudo.

于 2012-07-12T06:49:45.167 に答える
0

多くの実験の後、私にとってうまくいった唯一のことは、OSXルートアカウントを有効にすることでした。

su
npm install -g tower

sudo は機能しませんでしたが、su は機能しました。

于 2012-08-05T10:39:36.127 に答える