我通过apt-get install和所有依赖项安装了节点js和npm,然后安装了browserify
npm install browserify -g
它经历了整个过程,看起来好像正确安装了,但是当我尝试按照此演练做一个简单的捆绑包时
我得到错误:
/ usr / bin / env:节点:没有这样的文件或目录
我通过apt-get install和所有依赖项安装了节点js和npm,然后安装了browserify
npm install browserify -g
它经历了整个过程,看起来好像正确安装了,但是当我尝试按照此演练做一个简单的捆绑包时
我得到错误:
/ usr / bin / env:节点:没有这样的文件或目录
Answers:
一些Linux发行版不是将nodejs安装为“ node”可执行文件,而是将其安装为“ nodejs”。
在这种情况下,您必须手动链接到“节点”,因为在“节点”二进制文件之后编写了许多软件包。未链接到“ python”的“ python2”也会发生类似的情况。
在这种情况下,您可以进行简单的符号链接。对于Linux发行版,/usr/bin
您可以在其中安装软件包二进制文件
ln -s /usr/bin/nodejs /usr/bin/node
/usb/sbin/node
是ax24节点(与nodejs不相关)。只是符号链接/usr/bin/node
将无法正常工作,因为/usr/sbin/node
首先出现在$PATH
update-alternatives
。在这里看到我的答案stackoverflow.com/a/24592328/454615
update-alternatives
。在这些确切情况下存在。
新答案:
旧答案:
关于创建符号链接或安装其他节点程序包的任何说法都是虚假的,而且是不可持续的。
解决此问题的正确方法是:
update-alternatives
指示您的nodejs二进制文件负责#!/usr/bin/env node
像这样:
sudo apt-get install nodejs
sudo update-alternatives --install /usr/bin/node nodejs /usr/bin/nodejs 100
现在,这在软件包升级,发行版升级等过程中变得可持续。
运行apt-get install nodejs-legacy
。
某些Linux发行版更改了node.js二进制名称,使其与许多node.js软件包不兼容。软件包nodejs-legacy
提供了一个符号链接来解决此问题。
/usb/sbin/node
是ax24节点(与nodejs无关)。只是符号链接/usr/bin/node
将不起作用,因为/usr/sbin/node
首先出现于$PATH
您还可以使用NVM或Nodejs版本管理器安装Nodejs 。使用版本管理器有很多好处。其中之一就是您不必担心这个问题。
sudo apt-get update
sudo apt-get install build-essential libssl-dev
一旦安装了必备软件包,就可以从项目的GitHub页面下拉nvm安装脚本。版本号可能有所不同,但是通常,您可以使用以下语法下载并安装它:
curl https://raw.githubusercontent.com/creationix/nvm/v0.16.1/install.sh | sh
这将下载脚本并运行它。它将把软件安装到您的主目录的子目录中~/.nvm
。还将在~/.profile
文件中添加必要的行以使用该文件。
要获得对nvm功能的访问权限,您需要注销并重新登录,或者可以获取〜/ .profile文件,以便您的当前会话了解更改:
source ~/.profile
既然已经安装了nvm,则可以安装隔离的Node.js版本。
要查找可用于安装的Node.js版本,可以键入:
nvm ls-remote
. . .
v0.11.10
v0.11.11
v0.11.12
v0.11.13
v0.11.14
如您所见,在撰写本文时,最新版本是v0.11.14。您可以通过键入以下内容进行安装:
nvm install 0.11.14
通常,nvm会切换为使用最新安装的版本。您可以通过键入以下内容来明确告诉nvm使用我们刚刚下载的版本:
nvm use 0.11.14
使用nvm安装Node.js时,可执行文件称为node。您可以通过键入以下命令查看外壳当前正在使用的版本:
node -v
完整的教程可以在这里找到
sudo apt-get install nodejs-legacy
这将创建符号链接/usr/bin/node -> nodejs
。
资料来源:https : //lists.debian.org/debian-devel-announce/2012/07/msg00002.html