2011
Sep
21
使用 yum 安装 nodejs
如果你的环境是 RedHat, CentOS ,要先安装这个 nodejs 团队维护的 RPM Repository
再用 yum 安装 nodejs
- sudo yum install nodejs -y
自行编译 nodejs 安装
安装 Node.js 时,他会自动帮你安装 V8 engine ,若是 V8 engine 有问题,装不起来的话,可以参考「安装 Google V8 Engine」
- 载点: http://nodejs.org/dist/v0.10.17/node-v0.10.17.tar.gz
- 其它版本的 node.js http://nodejs.org/dist/
- ./configure
- make
- sudo make install
- sudo make fullinstall
将 V8 与 UV 分开安装
Node.js 会使用到 V8 , UV 这两个 library ,一般来说,下载 Node.js 时,就已经含有这两个软体,不过我们也可以自已分开安装 v8 与 UV,安装方式如下。
Install uv library
- git clone https://github.com/joyent/libuv.git
- /bin/sh autogen.sh
- ./configure --prefix=/usr/local/uv --bindir=/usr/local/bin --libdir=/usr/local/lib --includedir=/usr/local/include --mandir /usr/local/share/man/man1
- make
- sudo make install
Install v8 library
Install Node.js
- ./configure --shared-libuv --shared-v8 --shared-v8-libpath=/usr/local/lib --shared-v8-includes=/usr/local/include/v8 --shared-libuv-includes=/usr/local/include/ --shared-libuv-libpath=/usr/local/lib
分开安装的好处是,每一个软体都独立编译,一步一步安装,哪一个软体出错,都可以很快的知道问题,如果一次编译全部的软体,光是编译可能就花掉半小时以上,而且失败又要重来。
! PS: libtool, autoconf 这两个 library 版本不能太低,分别最少都要 2.4, 2.5 以上安装问题
「NameError: name 'set' is not defined」
! python版本要在 2.6~2.99 之间,太新或太旧都不行「deps/v8/src/platform-linux.cc:587: error:PR_SET_NAME' was not declared」
! 这个问题主要是因为这句语法 prctl(PR_SET_NAME),这是为旧的linux核心用的,一般来说是用不到的,直接注解掉就好了。「 File "./configure", line 436 fpu = 'vfpv3' if armv7 else 'vfpv2'」
! python 升到 2.7 以上版本即可简易测试
- testing.js
Example
- console.log("testing");
- 执行
Example
- [puritys]node# node testing.js
- testing
载入JS档
- require('./xxx.js'); 用「点」开头,代表以目前的目录为路径,载入 xxx.js
- require('xxx.js'); 这种写法,预设会以 NODE_PATH 为路径,来寻找 xxx.js ,可以用 export NODE_PATH="/home/xxx/node"来设定路径
安装 Package 管理工具 NPM
NPM 全名是 Node.js Package Manager,目的是用来安装 node.js 相关的 Package ,安装 NPM 之后,就可以用指令的方式,去安装别人上传到 npm 的 Library。
安装方式
- sudo bash -c "curl https://www.npmjs.com/install.sh | sh"
如果 npm 安装失败的话,可以用另外一个方式
- curl -k https://www.npmjs.com/install.sh > install.sh
- sudo -E sh install.sh