我通过apt-get install安装了Node.js和npm以及所有依赖项,然后安装了Browserify。
npm install browserify -g
安装过程看起来很顺利,没有出现任何问题,但是当我按照这个指南尝试进行简单的bundle时,却出现了以下错误:
/usr/bin/env: node: No such file or directory
我通过apt-get install安装了Node.js和npm以及所有依赖项,然后安装了Browserify。
npm install browserify -g
安装过程看起来很顺利,没有出现任何问题,但是当我按照这个指南尝试进行简单的bundle时,却出现了以下错误:
/usr/bin/env: node: No such file or directory
一些Linux发行版将nodejs安装为"nodejs"可执行文件,而非"node"。
在这种情况下,您需要手动链接到"node",因为许多包都是在"node"二进制文件之后编程的。类似的情况也会出现在未链接到"python"的"python2"上。
在这种情况下,您可以进行简单的符号链接。对于将软件包二进制文件安装到/usr/bin
的Linux发行版,您可以执行以下操作:
ln -s /usr/bin/nodejs /usr/bin/node
/usb/sbin/node
是ax24-node(与nodejs无关),所以这不是Ubuntu 14.04的解决方法。仅仅通过符号链接到/usr/bin/node
也行不通,因为$PATH
中首先出现的是/usr/sbin/node
。 - Garethupdate-alternatives
。在这里查看我的答案:https://dev59.com/RmEi5IYBdhLWcg3w2fYm#24592328。 - airtonixupdate-alternatives
。它就是为这些确切情况而存在的。 - airtonixbrowserify
需要node来运行...它的命令是如何启动的? - Alexander Suraphel新的回答:
旧的回答:
任何关于创建符号链接或安装其他node-package的讨论都是无稽之谈并且不可持续。
正确的解决方法是:
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
。nodejs-legacy
提供符号链接以解决此问题。/usb/sbin/node
是ax24-node(与nodejs无关)。仅将符号链接到/usr/bin/node
不起作用,因为/usr/sbin/node
出现在$PATH
中。 - Garethsudo 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
文件中添加必要的行以使用该文件。source ~/.profile
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 use 0.11.14
node -v
完整的教程可以在这里找到。
sudo apt-get install nodejs-legacy
/usr/bin/node -> nodejs
。
来源:https://lists.debian.org/debian-devel-announce/2012/07/msg00002.html
我在Linux上构建Atom时遇到了相同的问题。
sudo apt-get install nodejs-dev
修正我的问题,希望对你有所帮助。
运行命令 which node
,结果将会是:
/home/moh/.nvm/versions/node/v8.9.4/bin/node
复制上面得到的路径,然后运行第3步的命令。
ln -s /home/moh/.nvm/versions/node/v8.9.4/bin/node /usr/bin/node
如果您不想使用符号链接,可以尝试以下方法。 在Ubuntu中可行。
#!/usr/local/bin/node --harmony
harmony标签是用于新的ECMAscript Harmony
node -v
:如果没有找到任何内容,请尝试 nodejs -v
。如果显示了一个版本号,则应该使用的命令是 nodejs
而不是 node
。因此,你需要将脚本中对 browserify 的调用从 node
更改为 nodejs
(如下所示):replace
#!/usr/bin/env node
使用
#!/usr/bin/env nodejs