用sudo add-apt-repository ppa:chris-lea/node.js
装了新的nodejs
,可以进入nodejs
环境,输入console.log
也可以打印出,但是输入node -v
却没有任何反应
于是我用下载node
的源码去编译,python
是2.7.6
;还是装不成功,请问有哪些需要注意的嘛?
这几天为了装hexo也是在寻找nodejs安装方法,用hexo官网推荐的nvm
安装的nodejs有点问题,所以我找到了AskUbuntu这篇文章,里面有个答案(不是最高票那个)使用nodesource的(文档说明见此)ppa来安装,很简单的两条命令就解决了,然后就是这个样子了:(~ ̄▽ ̄)~
用我这个方法吧,这样安装是最新的。
其实只要下载其二进制包就好了,只需要用命令生成二个软链接就好,就相当于windows下的环境变量设置,具体请看:
http://segmentfault.com/a/1190000000584731
请用https://deb.nodesource.com/ppa:chris-lea/node.js
已经不维护了.
这个我也遇到过,不过是碰巧找到“解决方案”的
安装一下nodejs-legacy就可以了,ubuntu我也不是很熟,也不知道这是什么原因
windows下是node -v;ubuntu下是nodejs -v
ubuntu下的node是另外一个东西,这个要注意下
按照你这个截图看,是在安装node的时候,安装位置为/usr/local/bin/node,但这个位置是需要root权限的,而截图上提示的错误就是你的权限不够,node没有安装成功。如果你用源码编译安装,记得最后安装时加sudo执行。而且你在执行nodejs的时候,截图也提示你了,你的nodejs没有安装,但你可以使用sudo apt-get install nodejs
这个命令来安装,这是因为你之前添加了ppa才可以这样安装。
另外,我想补充的是,你所用的ppa的方法,已经是很旧的了,即使安装成功也是很老版本的,这个ppa已经很久不更新了,现在ubuntu软件仓库就已经有node了,所以你可以先用sudo apt-add-repository -r ppa:chris-lea/node.js-devel
删除这个ppa,然后安装仓库里的node:
sudo apt-get install nodejs
如果你发现仓库里的nodejs版本不够高,可以更新一下仓库和软件版本:
sudo apt-get update sudo apt-get upgrade
你也可以用源代码编译安装node,也很简单,下载node的源代码包,解压,进入目录执行:
./configure && make && sudo make install
补充:
为什么执行node -v
没有输出?
ubuntu的仓库里面,已经存在一个叫node的软件包了,可以执行
aptitude search node
`查看,这是一个先于nodejs存在的软件名,已经被用了,所以ubuntu只能把用于js开发的这个node改名叫nodejs,如果系统已经安装此软件,执行node -v
并非nodejs的node,它跟nodejs一点关系也没有,它的-v
参数是不显示任何东西的。
node 还是 nodejs ?
用
apt-get install nodejs
方法安装的,或是ppa方法安装的,命令都应该叫 nodejs,应该使用nodejs -v
来测试。不过如果使用源代码的方式编译安装的(默认安装到/usr/local/bin,除非指定prefix参数),也叫node,这个node是真正的nodejs的node,所以为了避免与ubuntu仓库中的node引起混淆,建议安装后,把node改名为nodejs