详解如何在ubuntu上安装nodejs
发布于 3年前 作者 tieqixia 20256 次浏览

折腾了两天晚上,终于把nodejs在unbuntu装好了,此间各种坎坷,记录于此,造福后来人。

第一步:安装依赖包


1. 安装python 2.6版或者更高(ubuntu默认都已安装,可以在terminal中使用 pyhton -v 命令查看python版本)。
2. 安装其他依赖包:
sudo apt-get install g++ curl libssl-dev apache2-utils
3. 安装git工具:
sudo apt-get install git-core

第二步:获取源码


git clone git://github.com/joyent/node.git
等待下载完成,大小为20+m。

第三步:指定编译版本,重要!


1.先进入存放下载源码的文件夹:
cd node
2. 指定迁出版本:
git checkout v0.4.10
这里非常重要,因为目前最新的node版本为0.5.5-pre,但是很多常用的包仅支持到0.4.10(比如express),所以如果使用最新版node的话,会导致npm无法下载相应的包。
3. 指定路径,编译执行:
mkdir ~/local
./configure –prefix=$HOME/local/node
make
make install
echo ‘export PATH=$HOME/local/node/bin:$PATH’ >> ~/.profile
echo ‘export NODE_PATH=$HOME/local/node:$HOME/local/node/lib/node_modules’ >> ~/.profile
source ~/.profile

第四步:设置环境变量


如果想重启后还能继续直接使用node命令,那么需要设置环境变量:
使用命令 sudo gedit /etc/profile 打开配置文件,在文件最后中添加如下两行:
export PATH=”$HOME/local/node/bin:$PATH”
export NODE_PATH=”$HOME/local/node:$HOME/local/node/lib/node_modules”
保存后重启系统使设置生效。

第五步:安装npm


curl http://npmjs.org/install.sh | sh
根据需要,安装相应的包,例如express:
npm install express
如果输入该命令后长时间没有反应,可以通过添加 -verbose参数查看执行的详细信息,即:
npm install express -verbose
一般情况下无法下载有两个原因:
1. 网速太慢,超时退出。
2. node的版本太新,当前下载的包不支持。(解决方法在第三步已说明。)

第六步:测试HelloWorld程序


将以下代码保存为一个hello.js的文件










1

2

3

4

5

6


var
http = require(
‘http’
);

http.createServer(
function
(req, res) {

  
res.writeHead(200, {
‘Content-Type’
: 
‘text/plain’
});

  
res.end(
‘Hello Node.jsn’
);

}).listen(8124, 
“127.0.0.1”
);

console.log(
‘Server running at http://127.0.0.1:8124/’
);




然后使用命令:
node hello.js
启动服务。
打开浏览器,输入地址:http://127.0.0.1:8124/
如果返回 Hello Node.jsn 则安装成功!


想就本文内容同作者进行深入讨论?请在作者的微博留言:http://t.sina.com.cn/tieji2pulee

9 回复

build
sudo apt-get -y install build-essential git-core libssl-dev

# nvm
git clone git://github.com/creationix/nvm.git ~/.nvm

# nvm to bashrc
echo ‘. $HOME/.nvm/nvm.sh’ >> ~/.bashrc

# refresh bashrc
. ~/.bashrc

# sync node version
nvm sync

# install version
nvm install v0.5.0

# install express
npm install -g express

不错,顶!
我上次也在ubuntu上编译安装。。。编译了半天编译不出来。。。
后来加了prefix参数就可以了。。。默认的好像不行。。。
./configure –prefix=$HOME/local/node

我刚开始装的也是最新版,后来发现express还不支持,就切回了。

第三步 其实已经配置了环境变量,只不过是 user/.profile 别的用户登录(比如你sudo -s了),node不在是全局可访问,需要指定abs path 。

所以你加了第四步,彻底的解决了这个问题,哈哈。

在下新手,麻烦问一下“./configure –prefix=$HOME/local/node” 的那个 杠“-”是怎么输出的?还有就是 安装npm 楼主貌似还说少一步:需要权限“sudo chown -R $USER /usr/local”

@admiral.xml 应该是./configure --prefix=$HOME/local/node

[…] 详解如何在ubuntu上安装nodejs […]

前面的是从原先的 cnodejs.net 转过来的吗? 代码的排版乱了

楼主写的用心,但文字太多!还是看这篇文章的介绍吧: http://howtonode.org/how-to-install-nodejs

回到顶部