我的生产服务器(Centos 5.9)无法编译 nodejs,可能是因为它的 gcc 只有 4.1.2(推荐 4.2 或更高版本)所以我正在尝试安装二进制文件。
$ wget http://nodejs.org/dist/v0.10.22/node-v0.10.22-linux-x86.tar.gz
$ tar -zxvf node-v0.10.22-linux-x86.tar.gz
$ cd node-v0.10.22-linux-x86
$ sudo cp bin/* /usr/local/bin
$ sudo cp -R lib/* /usr/local/lib
$ sudo cp -R share/* /usr/local/share
现在进行测试:
$ node -v # => v0.10.22
$ man node # looks fine
$ npm -v # UH OH, PROBLEM - Cannot find module 'npmlog'
现在(请记住,我是 node 的初学者)我做了一些搜索,发现有一个名为 NODE_PATH 的环境变量,所以我尝试了:
$ export NODE_PATH=/usr/local/lib/node_modules
$ npm -v # SAME PROBLEM - Cannot find module 'npmlog'
然后我发现了 npmlog 所在的位置并尝试相应地修改 NODE_PATH:
$ find /usr/local/lib -name npmlog # => /usr/local/lib/node_modules/npm/node_modules/npmlog
$ export NODE_PATH=/usr/local/lib/node_modules/npm/node_modules
$ npm -v # DIFFERENT PROBLEM - Can't find '../lib/npm.js'
在这个阶段,经过更多无益的谷歌搜索后,我决定我已经超出了我的深度并决定寻求帮助。谁能告诉我我做错了什么?
最佳答案
干净的 NPM 重新安装会更快,这将删除“损坏的”链接:
wget https://npmjs.org/install.sh
chmod +x install.sh
sudo ./install.sh
然后它会要求你删除旧的 NPM 链接
https://stackoverflow.com/questions/20028996/