node和npm的问题

时间:2015-11-19 14:20:44

标签: node.js npm

我已通过nodejs安装了apt-get install nodejs。工作正常。

当我尝试使用socket.io安装npm install --save socket.io时,我最终会失败:

npm WARN This failure might be due to the use of legacy binary "node"

我试图使用以下方法解决此问题:

sudo update-alternative --install /usr/bin/node node /usr/bin/nodesjs 10

......无济于事。

我尝试从源代码构建node,但npm未安装 - 文档说明从源代码构建npm时应安装node

我已从节点网站下载了二进制文件,并将nodenpm移至/usr/local/bin。这样做时节点工作正常,但npm没有。我总是得到command not found并尝试使用绝对路径npm运行/usr/local/bin/npm时找不到它(权限是正确的)。

如果我运行:node -v我得到v0.10.29,这与运行'nodejs -v'相同。

所以,我不知道下一步该怎么做。

请问任何建议?

2 个答案:

答案 0 :(得分:2)

您应该删除旧版本:

apt-get remove nodejs nodejs-legacy npm

并尝试重新安装。

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get -y install nodejs

要从npm编译和安装本机插件,您可能还需要安装构建工具:

sudo apt-get install -y build-essential

答案 1 :(得分:0)

如果您手动将npm移至/usr/local/bin,则应将此命令写入cli并重试。

alias npm="/usr/local/bin/npm"