• 使用编译好的包安装

一、在官网下载包

https://nodejs.org/en/download/

二、把包传送到服务器,进入到包目录并解压

tar axvf node-v6.9.5-linux-x64.tar.xz

三、进入到解压后的node包中的bin目录

cd node-v6.9.5-linux-x64/bin

四、查看node版本

./node -v

五、在opt目录下创建bin目录,用于后面的软连接配置

mkdir /opt/bin/

六、进入编译后的目录后,进行一些软连接配置,即可全局使用node/npm命令

ln -s /home/czp/node-v6.9.5-linux-x64/bin/node /opt/bin/node

ln -s /home/czp/node-v6.9.5-linux-x64/bin/npm /opt/bin/npm

这样就简单的部署好了

  • 使用源码安装

一、下载nodejs的依赖包

yum -y install gcc gcc-c++ openssl-devel

或yum -y install gcc make gcc-c++ openssl-devel wget

或yum install libtool automake autoconf gcc-c++ openssl-devel

二、官网下载node或者wget下载

官网下载:https://nodejs.org/en/download/

wget下载:wget http://nodejs.org/dist/v6.9.5/node-v6.9.5.tar.gz

三、解压包并进入

tar zxvf node-v6.9.5.tar.gz

cd node-v6.9.5

四、配置、编译、安装

./configure --prefix=/opt/nodejs

make 这个时间还是比较长的

make install

五、配置node环境

进入:vim /etc/profile

#set nodejs env

export NODE_HOME=/opt/nodejs

export PATH=$NODE_HOME/bin:$PATH

export NODE_PATH=$NODE_HOME/lib/node_modules:$PATH

重启生效:

六、检查版本

node -v

源码编译安装出现的问题

1、问题:./configure —prefix=/opt/node后报错WARNING: C++ compiler too old, need g++ 4.8 or clang++ 3.4 (CXX=g++)说明gcc版本太低需要升级

//绿色的字为错位的所在

解决方法:

GCC4.9.4官网有全版本下载:http://ftp.gnu.org/gnu/gcc/

1.下载gcc最新的源码包 wget http://gcc.skazkaforyou.com/releases/gcc-4.9.1/gcc-4.9.1.tar.gz

2.解压缩:tar -xf gcc-4.9.1.tar.gz

3.进入到目录 cd gcc-4.9.1,运行:./contrib/download_prerequisites。这个神奇的脚本文件会帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。

4.建立输出目录并到目录里:mkdir gcc-build-4.9.1;cd gcc-build-4.9.1

5.配置

../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

6.编译:make    这个时间有点长

7.安装:make install

8.验证:gcc -v

2、问题:/home/czp/node-v6.9.5/out/Release/mksnapshot: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/czp/node-v6.9.5/out/Release/mksnapshot)

/home/czp/node-v6.9.5/out/Release/mksnapshot: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/czp/node-v6.9.5/out/Release/mksnapshot)

make[1]: *** [/home/czp/node-v6.9.5/out/Release/obj.target/v8_snapshot/geni/snapshot.cc] 错误 1

make[1]: Leaving directory `/home/czp/node-v6.9.5/out'

make: *** [node] 错误 2

//绿色的字为错位的所在

解决方法:

1、查看 GLIBCXX 版本:

strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

(我的系统是64bit的所以lib64,如果是32bit的直接lib)

GLIBCXX_3.4

GLIBCXX_3.4.1

GLIBCXX_3.4.2

GLIBCXX_3.4.3

GLIBCXX_3.4.4

GLIBCXX_3.4.5

GLIBCXX_3.4.6

GLIBCXX_3.4.7

GLIBCXX_3.4.8

GLIBCXX_3.4.9

GLIBCXX_3.4.10

GLIBCXX_3.4.11

GLIBCXX_3.4.12

GLIBCXX_3.4.13

GLIBCXX_FORCE_NEW

GLIBCXX_DEBUG_MESSAGE_LENGTH

查看版本发现并没有GLIBCXX_3.4.15和GLIBCXX_3.4.20

2、执行命令,查找编译 gcc 时生成的最新动态库:

find / -name “libstdc++.so.6”

/usr/lib64/libstdc++.so.6

/usr/local/lib64/libstdc++.so.6

/home/czp/gcc-4.9.1/gcc-build-4.9.1/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6

/home/czp/gcc-4.9.1/gcc-build-4.9.1/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6

/home/czp/gcc-4.9.1/gcc-build-4.9.1/stage1-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6

3、将上面的最新动态库 libstdc++.so.6 复制到 /usr/lib64 目录下:(就是最后一个)

cp /home/czp/gcc-4.9.1/gcc-build-4.9.1/stage1-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6 /usr/lib64

4、覆盖之后再次查看下最新动态库

find / -name “libstdc++.so.6”

此时能看到GLIBCXX_3.4.15和GLIBCXX_3.4.20

5、回到 node 目录下尝试重新编译

Centos6.5安装部署nodejs的更多相关文章

  1. 基于centos6.5安装部署mongdb3.6

    注意:不同的版本的centos,mongdb安装方式不同,请注意版本号!! 基于centos6.5安装部署mongdb3.6 方式有多种,本文介绍使用wget命令来下载获取mongdb,具体命令如下 ...

  2. 史上最全CentOS6离线安装部署Cloudera Manager5.9.3

    史上最全CentOS6离线安装部署Cloudera Manager5.9.3

  3. centos-6.5安装部署LNMP环境

    安装部署前,确保安装了gcc和gcc-c++ 系统信息: [root@zww ~]# cat /etc/redhat-release CentOS release 6.5 (Final) [root@ ...

  4. Linux下安装部署NodeJS完整步骤

    关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ NodeJS是一个开源,跨平台,轻量级的JavaScript运行时环境,可用于构建可扩展的网络 ...

  5. centos6.5_64bit-kvm安装部署

    kvm部署安装   目录 kvm部署安装... 1 一.kvm部署... 1 1.关闭selinux和防火墙... 1 2.查看主机是否支持虚拟化... 1 3.安装kvm和其他虚拟化软件包... 1 ...

  6. Windows 7下安装部署NodeJs

    第一步  安装NodeJs http://nodejs.org/download/ 下载windows版本的msi文件,双击进行安装即可.安装完毕,默认安装路径为C:\Program Files\no ...

  7. centos6下安装部署hadoop2.2

    环境准备1.操作系统:centos6.0 64位2.hadoop版本:hahadoop-2.2.0 安装和配置步骤具体如下:1.主机和ip分配如下     ip地址                  ...

  8. centos6.5安装部署zabbix监控服务端和客户端

    部署zabbix服务端需要LNMP环境(nginx,mysql,php),其它数据库也可以,我这里使用mysql,关于LNMP环境部署,可以参考我的另一遍文章:http://www.cnblogs.c ...

  9. centos6.5_64bit-Tomcat7安装部署

    此次安装系统版本及软件版本 centos6.5-64bit java -1.7.0_45 jdk1.8.0_111 apache-tomcat-7.0.73   一.检查java版本信息        ...

随机推荐

  1. javascript 数组中出现的次数最多的元素

    javascript 数组中出现的次数最多的元素 var arr = [1,-1,2,4,5,5,6,7,5,8,6]; var maxVal = arr[0]; // 数组中的最大值 var min ...

  2. cookie 、Session 和自定义分页

    cookie cookie的由来 大家都知道Http协议是无状态的. 无状态的意思 是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系, 他不会受前面的请求响应情况直接影响, ...

  3. spring-cloud 服务优雅下线

      在集群环境下,zuul后面的api服务一般会有多个实例,当下线某个实例时,如果使用 kill -9 pid 的方式,会造成这个服务在eureka中还存在,请求还会路由到这个服务上面,造成500,所 ...

  4. C# 写 LeetCode easy #26 Remove Duplicates from Sorted Array

    26.Remove Duplicates from Sorted Array Given a sorted array nums, remove the duplicates in-place suc ...

  5. vimtutor总结

    $vimtutor ================================================================================ W e l c o ...

  6. JSP,EL和JSTL

    JSP,EL和JSTL 内容待添加...

  7. day22作业详解

    1.面向对象作业1 2.作业详解 点击查看详细内容 #1. class Li(object): def func1(self): print('in func1') obj = Li() obj.fu ...

  8. python实现王者荣耀英图片收集

    一个python写的小爬虫项目,爬虫相关的很容易写,关键是怎么找到爬取图片的位置. 图片位置分析 hero_list_url = 'http://pvp.qq.com/web201605/js/her ...

  9. maven POM总结

    可继承的字段 version property 其他占坑: parent import scope   Dependency_Management中的scope是可以被继承的,http://maven ...

  10. RabbitMQ使用教程(三)如何保证消息99.99%被发送成功?

    1. 前情回顾 RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例 RabbitMQ使用教程(二)RabbitMQ用户管理,角色管理及权限设置 在以上两篇博客发布后 ...