CentOS7 编译安装nodejs,配置环境变量记录
每次都装,每次都查
阿里云备案了一个域名,续费了好多年,但是没钱买服务器,就挂在github上。今天收到消息:域名解析服务器不在阿里云,要被GG。只能咬牙买了个阿里云乞丐版。
所有服务都装好了,ping域名也通了,就是无法访问。感谢伟大的sf网友,给我指明了方向,
阿里云也不给个醒目的提示,让我等小白如何知道还要配置安全组。。。
安装nodejs
去nodejs官网查看需要的版本。官网
nodejs的安装需要依赖很多,如gcc等,首先我们需要将这些安装成功,用rpm命令rpm -q gcc查看下,如果没有gcc等,所以要用yum进行安装:
yum -y install gcc gcc-c++ kernel-devel
也可以使用下面命令查看否有 Development Tools:
yum group list没有的安装开发工具:
yum -y update && yum -y group install"Development Tools"
将依赖安装后,就可以进行nodejs安装啦
Linux目录介绍
Linux系统目录详解
linux下编译安装程序的路径说明
/home用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示/var某些大文件的溢出区,比方说各种服务的日志文件/usr最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含:/usr/local这里主要存放那些手动安装的软件,即不是通过“新立得”或apt-get安装的软件。它和/usr目录具有相类似的目录结构。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面,第九影院我想这应该是个不错的主意。
我们就选/usr/local目录下新建一个nodejs目录来编译安装吧:
首先在~下新建一个download目录,去淘宝镜像查询可用版本,然后:
wget https://npm.taobao.org/mirrors/node/latest-v8.x/node-v8.9.3.tar.gz
tar -xzvf node-v8.9.3.tar.gz
(可选)解压后可以删除源代码包,释放空间
rm node-v8.9.3.tar.gz
然后进入解压后的目录
cd node-v8.9.3
./configure
。。。。。失败,gcc-c++编译器太老,升级编译器巨坑,换条路子
如果上面的命令成功,接下来执行:
编译
make
如果报错
fatal error: zlib.h: No such file or directory #include <zlib.h> 缺少
zlib的头文件, 开发包没装,
yum install zlib (系统默认已经装上)
yum install zlib-devel
解决
如果还报错 Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains:
/usr/local/lib64/ yum install perl-ExtUtils-Embed -y
安装
make install
不指定prefix,则可执行文件默认放在/usr
/local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc。其它的资源文件放在/usr
/local/share。你要卸载这个程序,要么在原来的make目录下用一次make
uninstall(前提是make文件指定过uninstall),要么去上述目录里面把相关的文件一个个手工删掉。
指定prefix,直接删掉一个文件夹就够了。
去官网下载二进制包:
wget https://nodejs.org/dist/v8.9.3/node-v8.9.3-linux-x64.tar.xz
xz -d node-v8.9.3-linux-x64.tar.xz
tar -xvf node-v8.9.3-linux-x64.tar
mv node-v8.9.3-linux-x64 /usr/local/nodejs
配置环境变量
vi /etc/profile
最后面添加:
export NODE_HOME=/usr/local/nodejs
export PATH=$NODE_HOME/bin:$PATH
:wq保存,然后运行
source /etc/profile
可以用node -v和npm -v来检查下:
    node -v
    // v8.9.3
    npm -v
    // 5.5.1查看环境变量是否生效
echo $PATH
安装git
下载git
wget http://www.dijiuyy.org/ pub/software/scm/git/git-2.15.1.tar.gz
执行
$ yum install curl-devel
$ # cd to wherever the source for git is
$ cd /usr/local/src/git-1.7.9
$ ./configure
$ make
$ make install
编译安装完以后git命令无法直接使用,需要设置下环境变量。执行如下操作:
echo "export PATH=/usr/local/git/bin:$PATH" >> /etc/profile
source  /etc/profile
好像可以通过
yum -y install epel-release安装git和node
yum -y groupinstall "Development Tools"
yum -y install git
如果遇到git fatal: Unable to find remote helper for ‘https’的错误,可以通过
whereis git
找出对应的git安装目录,删除,然后安装
yum install curl-devel然后再走一遍编译安装的步骤,就能搞定啦
安装zsh
sudo yum update && sudo yum -y install zsh
chsh -s $(which zsh)
echo $SHELL
安装好需要reboot重启系统,才能生效,验证下
CentOS7 编译安装nodejs,配置环境变量记录的更多相关文章
- java基础学习总结一(java语言发展历史、jdk的下载安装以及配置环境变量)
		最近一段时间计划复习一下java基础知识,使用的视频课程是尚学堂高淇老师的,上课过程中的心得体会直接总结一下,方便以后复习. 一:计算机语言的发展 1:机器语言,最原始的语言,主要有“01”构成,最早 ... 
- Java基础学习总结一(Java语言发展历史、JDK下载安装以及配置环境变量)
		最近一段时间计划复习一下java基础知识,使用的视频课程是尚学堂高淇老师的,上课过程中的心得体会直接总结一下,方便以后复习. 一:计算机语言的发展 1:机器语言,最原始的语言,主要有“01”构成,最早 ... 
- centos7 编译安装新版LNMP环境
		centos7 编译安装新版LNMP环境 环境版本如下: 1.系统环境:Centos 7 x86_64 2.NGINX:nginx-1.11.3.tar.gz 3.数据库:mariadb-10.0.2 ... 
- Mac OSX系统中Hadoop / Hive 与 spark 的安装与配置 环境搭建 记录
		Mac OSX系统中Hadoop / Hive 与 spark 的安装与配置 环境搭建 记录 Hadoop 2.6 的安装与配置(伪分布式) 下载并解压缩 配置 .bash_profile : ... 
- Golang入门(1):安装与配置环境变量的意义
		摘要 在几年前学习Java的时候,环境的配置就会劝退一部分的初学者.而对于Golang来说,也需要从环境的配置开始学起.这一篇文章将从如何安装Golang开始讲起,随后将会提到Golang中的环境变量 ... 
- Xamarin.Forms教程下载安装JDK配置环境变量
		Xamarin.Forms教程下载安装JDK配置环境变量 Xamarin.Form环境配置下载安装JDK JDK是编程Java程序必须的软件.也许有人会问我们用的C#为什么还有Java呢?这是因为我们 ... 
- JDK和TOMCAT的安装与配置环境变量
		一.JDK该怎么安装与配置环境变量 步骤1.安装JDK选择安装目录,安装jdk1.8.0_77过程中会出现安装提示. 步骤2.(1)安装jdk随意选择目录 只需把默认安装目录\java之前的目录修改即 ... 
- jdk 安装过程配置环境变量 error 的解决过程
		jdk 安装过程配置环境变量 error 的解决过程 问题背景: 我在安装 jdk 过程中在JAVA_HOME和path中添加路径后, cmd 中输入java 和javac均出现错误,因为之前在 D ... 
- Linux CentOS7.0下JAVA安装和配置环境变量
		一.前言: CentOS7.0虽然自带JDK1.7和1.8,运行“java -version”命令也可以看到版本信息,但是jdk的安装环境不全,比如缺少tool.jar和dt.jar等,这就导致“ja ... 
随机推荐
- 用到UdpClient的一点经验
			Thread.Abort对UdpClient.Receive阻塞的线程无效 http://computer-programming-forum.com/4-csharp/184f9d4ee63704f ... 
- Ray-AABB交叉检测算法
			最近在解决三维问题时,需要判断线段是否与立方体交叉,这个问题可以引申为:射线是否穿过立方体AABB. 在3D游戏开发中碰撞检测普遍采用的算法是轴对齐矩形边界框(Axially Aligned ... 
- 搭建基于Express框架运行环境
			安装express generator生成器 通过生成器自动创建项目 配置分析 一.安装 cnpm i -g express-generator express --version // 查看版本 e ... 
- 利用Kettle转储接口数据
			1. 项目背景 1.1. 项目背景 数据接口 API:应用程序接口(Application Program Interface)的简称,是实现计算机软件之间数据通信的工具.同时API也是一种 ... 
- jQuery、Angluar、Avalon对比
			最近在慕课网看一些关于avalon的视频,记录下一些笔记及代码实例以便日后自己复习可以用到,另外也可以给不想花时间看视频的小伙伴提供一丝丝帮助 这里主要是做一个简单的todolist 分别用三种不同的 ... 
- rsync+lsyncd实现实时同步
			1.接收端安装rsync,修改/etc/rsyncd.conf配置文件,然后启动服务. uid = rootgid = rootuse chroot = nomax connection = 4sec ... 
- uplift model学习笔记
			一.解决的问题: 通常的 Propensity Model 和 Response Model 只是给目标用户打了个分,并没有确保模型的结果可以使得活动的提升最大化:它没有告诉市场营销人员,哪个用户最有 ... 
- Linux crontab 实现秒级定时任务
			1 crontab 的延时: 原理:通过延时方法 sleep N 来实现每N秒执行. crontab -e 输入以下语句,然后 :wq 保存退出. * * * * * /usr/bin/curl ... 
- Matplotlib 图表的基本参数设置
			1.图名,图例,轴标签,轴边界,轴刻度,轴刻度标签 # 图名,图例,轴标签,轴边界,轴刻度,轴刻度标签等 df = pd.DataFrame(np.random.rand(10,2),columns= ... 
- linux c scanf()小解
			今天学习了新的内容,关于c语言的scanf()函数. scanf()函数,读取指定格式的值赋值给相应变量.空格(‘ ‘),回车('\n'),TAB是分隔符,轻易不会被读取.还有,该函数的返回值是正确读 ... 
