Centos6.5安装部署nodejs
- 使用编译好的包安装
一、在官网下载包
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的更多相关文章
- 基于centos6.5安装部署mongdb3.6
注意:不同的版本的centos,mongdb安装方式不同,请注意版本号!! 基于centos6.5安装部署mongdb3.6 方式有多种,本文介绍使用wget命令来下载获取mongdb,具体命令如下 ...
- 史上最全CentOS6离线安装部署Cloudera Manager5.9.3
史上最全CentOS6离线安装部署Cloudera Manager5.9.3
- centos-6.5安装部署LNMP环境
安装部署前,确保安装了gcc和gcc-c++ 系统信息: [root@zww ~]# cat /etc/redhat-release CentOS release 6.5 (Final) [root@ ...
- Linux下安装部署NodeJS完整步骤
关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ NodeJS是一个开源,跨平台,轻量级的JavaScript运行时环境,可用于构建可扩展的网络 ...
- centos6.5_64bit-kvm安装部署
kvm部署安装 目录 kvm部署安装... 1 一.kvm部署... 1 1.关闭selinux和防火墙... 1 2.查看主机是否支持虚拟化... 1 3.安装kvm和其他虚拟化软件包... 1 ...
- Windows 7下安装部署NodeJs
第一步 安装NodeJs http://nodejs.org/download/ 下载windows版本的msi文件,双击进行安装即可.安装完毕,默认安装路径为C:\Program Files\no ...
- centos6下安装部署hadoop2.2
环境准备1.操作系统:centos6.0 64位2.hadoop版本:hahadoop-2.2.0 安装和配置步骤具体如下:1.主机和ip分配如下 ip地址 ...
- centos6.5安装部署zabbix监控服务端和客户端
部署zabbix服务端需要LNMP环境(nginx,mysql,php),其它数据库也可以,我这里使用mysql,关于LNMP环境部署,可以参考我的另一遍文章:http://www.cnblogs.c ...
- centos6.5_64bit-Tomcat7安装部署
此次安装系统版本及软件版本 centos6.5-64bit java -1.7.0_45 jdk1.8.0_111 apache-tomcat-7.0.73 一.检查java版本信息 ...
随机推荐
- javascript 数组中出现的次数最多的元素
javascript 数组中出现的次数最多的元素 var arr = [1,-1,2,4,5,5,6,7,5,8,6]; var maxVal = arr[0]; // 数组中的最大值 var min ...
- cookie 、Session 和自定义分页
cookie cookie的由来 大家都知道Http协议是无状态的. 无状态的意思 是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系, 他不会受前面的请求响应情况直接影响, ...
- spring-cloud 服务优雅下线
在集群环境下,zuul后面的api服务一般会有多个实例,当下线某个实例时,如果使用 kill -9 pid 的方式,会造成这个服务在eureka中还存在,请求还会路由到这个服务上面,造成500,所 ...
- 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 ...
- vimtutor总结
$vimtutor ================================================================================ W e l c o ...
- JSP,EL和JSTL
JSP,EL和JSTL 内容待添加...
- day22作业详解
1.面向对象作业1 2.作业详解 点击查看详细内容 #1. class Li(object): def func1(self): print('in func1') obj = Li() obj.fu ...
- python实现王者荣耀英图片收集
一个python写的小爬虫项目,爬虫相关的很容易写,关键是怎么找到爬取图片的位置. 图片位置分析 hero_list_url = 'http://pvp.qq.com/web201605/js/her ...
- maven POM总结
可继承的字段 version property 其他占坑: parent import scope Dependency_Management中的scope是可以被继承的,http://maven ...
- RabbitMQ使用教程(三)如何保证消息99.99%被发送成功?
1. 前情回顾 RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例 RabbitMQ使用教程(二)RabbitMQ用户管理,角色管理及权限设置 在以上两篇博客发布后 ...