1. 安装环境
zengxf@zengxf-B85M-D2V-SI:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04 LTS Release: 16.04 Codename: xenial zengxf@zengxf-B85M-D2V-SI:~$ sudo uname --m x86_64
当前是64位的ubuntu 16.04 LTS的系统。
2. 安装方法
采用直接从源码包编译的方式。
2.1 下载node的源码包,可从这个地址下载:http://nodejs.org/dist/。我之前用的一直是v4.4.3的版本,所以源码包下的是这个:http://nodejs.org/dist/v4.4.3/node-v4.4.3.tar.gz,注意不要下http://nodejs.org/dist/v4.4.3/node-v4.4.3-linux-x64.tar.gz等带有操作系统标识的包,这种包不是源码包,是安装包,它们无法用后面的方法来安装。
nodejs有3种类型的版本,每种类型的版本号采用不同的方式管理,如v4.4.3,v5,v6都属于一个版本类型,v0.10.x,v0.12.x都属于另外一个版本类型,可参考下面两个资料了解不同类型的版本区别:
http://cnodejs.org/topic/5762549a50312f1107e615d7
https://github.com/nodejs/LTS/
2.2 按照nodejs官方的构建步骤进行操作,参考:https://github.com/nodejs/node/blob/master/BUILDING.md
3. 安装过程
3.1 安装前准备
gcc
andg++
4.8 or newer, orclang
andclang++
3.4 or newer- Python 2.6 or 2.7
- GNU Make 3.81 or newer
这一段来自nodejs官方的构建文档。第二项直接忽略,因为按照文档的说明,第一项跟第二项是二选一的。我采用第一项。
3.2 检查操作系统中是否已经有安装以上工具:
zengxf@zengxf-B85M-D2V-SI:~$ gcc --version gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. zengxf@zengxf-B85M-D2V-SI:~$ g++ --version g++ (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. zengxf@zengxf-B85M-D2V-SI:~$ /usr/bin/python Python 2.7.11+ (default, Apr 17 2016, 14:00:29) [GCC 5.3.1 20160413] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> quit(); zengxf@zengxf-B85M-D2V-SI:~$ make -v GNU Make 4.1 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
以上结果说明,3.1要求的那些工具都已经是正确安装,并且版本符合3.1要求。
Note that the above requires that python
resolve to Python 2.6 or 2.7 and not a newer version.
按照官方文档要求,python的版本很关键,必须是2.6或者2.7的版本,所以在检查版本的时候要特别核对python的版本信息,是否满足这点要求。 如果以上列出的工具,版本不对,或者当前的操作系统未安装,那么就要想办法安装满足条件的版本。届时可搜索各个工具的安装说明来解决。
3.3 进入源码包的下载目录,并把node的源码包解压
zengxf@zengxf-B85M-D2V-SI:~/下载$ ls jdk-8u111-linux-i586.tar.gz.part wine-qqintl.zip lantern-installer-beta-64-bit.deb wps-office_10.1.0.5672-a21_amd64.deb node-v4.4.3.tar.gz zengxf@zengxf-B85M-D2V-SI:~/下载$ tar -zxvf node-v4.4.3.tar.gz
解压成功后就会在下载目录里面产生一个跟压缩文件名对应的目录:
zengxf@zengxf-B85M-D2V-SI:~/下载$ ls
jdk-8u111-linux-i586.tar.gz.part node-v4.4.3.tar.gz
lantern-installer-beta-64-bit.deb wine-qqintl.zip
node-v4.4.3 wps-office_10.1.0.5672-a21_amd64.deb
进入解压后的目录:
zengxf@zengxf-B85M-D2V-SI:~/下载$ cd node-v4.4.3/ zengxf@zengxf-B85M-D2V-SI:~/下载/node-v4.4.3$
按顺序运行以下命令:
zengxf@zengxf-B85M-D2V-SI:~/下载/node-v4.4.3$ ./configure zengxf@zengxf-B85M-D2V-SI:~/下载/node-v4.4.3$ sudo make install
运行完之后,node跟npm应该就都装好了,可以通过以下两个命令来检查是否已经安装成功:
zengxf@zengxf-B85M-D2V-SI:~/下载/node-v4.4.3$ node -v v4.4.3 zengxf@zengxf-B85M-D2V-SI:~/下载/node-v4.4.3$ npm -v 2.15.1
最后可以把下载目录里面nodejs的源码包以及解压目录都删掉。