CentOS7下源码编译安装NodeJS11.9.0

在编译安装前要检查一下系统中的gcc编译器的版本如果版本过低在编译NodeJS时会报错,在升级gcc后要将老版本的动态库替换成新的动态库。之后就可以正常编译nodejs

gcc升级

 

下载gcc的源码包 wget http://gcc.skazkaforyou.com/releases/gcc-8.2.0/gcc-8.2.0.tar.gz

解压 tar -xf gcc-8.2.0.tar.gz

进入到目录gcc-8.2.0,运行:./contrib/download_prerequisites  这脚本会安装gcc需要依赖的包。

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

../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib。--enable-languages表示你要让你的gcc支持那些语言,--disable-multilib不生成编译为其他平台可执行代码的交叉编译器。--disable-checking生成的编译器在编译过程中不做额外检查,也可以使用--enable-checking=xxx来增加一些检查;

编译:make -j4 //选项 -j4 是多核编译;注意此不编译比较耗时,在我的虚拟机上编译大概2个小时。这个时间看具体机器配置情况而定。

安装 make install 

重启系统 reboot

查看 gcc 版本 gcc -v

 

gcc动态链接库替换成新版本

拷贝GCC中最新的libstdc++.so.6.0.25文件到 /usr/lib64 目录下

cp /usr/local/src/gcc-8.2.0/gcc-build-8.2.0/x86_64-pc-linux-gnc/libstdc++-v3/src/.libs/libstdc++.so.6.0.25 /usr/lib64/libstdc++.so.6.0.25

删除之前的libstdc++.so.6

rm -f /usr/lib64/libstdc++.so.6

将libstdc++.so.6 连接到最新的libstdc++.so.6.0.25文件

ln -s /usr/lib64/libstdc++.so.6.0.25 /usr/lib64/libstdc++.so.6

 

 

 

编译NodeJS

下载node最新源码

cd /usr/local/src/

wget http://nodejs.org/dist/v11.9.0/node-v11.9.0.tar.gz

解压源码

tar zxvf node-v11.9.0.tar.gz

编译安装

cd node-v11.9.0

./configure --prefix=/usr/local/node/11.9.0

make -j4

make install

查看node的版本

node -v

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值