我在centos6.5上安装node.js而node.js没问题,但是当我测试npm -v
[root@localhost ~]# npm -v
module.js:340
throw err;
^
Error: Cannot find module 'npmlog'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at /usr/bin/npm:18:11
at Object.<anonymous> (/usr/bin/npm:86:3)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
答案 0 :(得分:0)
按照说明工作
以下是从源代码安装Node.js的步骤(OSX / linux) 你可能/应该发布所有这些cmd,因为你自己不是root(sudo)
注意 - 这会安装Node.js,它既可以提供节点也可以提供npm, 他们每次发布都会聚在一起。
开始新的删除先前节点和npm安装以及这些:
sudo mv ~/.npmrc ~/.npmrc_ignore
sudo mv ~/.npm ~/.npm_ignore
sudo mv ~/tmp ~/tmp_ignore
sudo mv ~/.npm-init.js ~/.npm-init.js_ignore
下载源代码
cd node-v0.10.33
将环境变量NODE_PATH定义为后续模块安装的目录
export NODE_PARENT=/some/desired/install/path_goes_here
export NODE_PARENT=/usr/local/bin/nodejs # use this if you want to install as root (sudo)
export NODE_PARENT=${HOME}/nodejs-v0.10.33 # use this if you want to install modules as yourself
export PATH=${NODE_PARENT}/bin:${PATH}
export NODE_PATH=${NODE_PARENT}/lib/node_modules
./configure --prefix=${NODE_PARENT}
make
make install
将其放入上面--prefix
定义的目录中使用语法时:npm install -g some_cool_module -g for global将它安装到dir $ NODE_PATH而不是你的$ PWD
现在把三个导出xxx = yyy 命令到你的〜/ .bashrc或其他一些来保持这些环境变量的变化