在CentOS 4.9(i386)上构建Node.js v6.8.0

简介

    • nodejsビルドに必要な、gcc-4.8.2関連のバイナリを用意した。(https://github.com/mt08xx/centos49_gcc482)

ビルド手順は基本的に、前回の記事。

/opt/tools346 に gcc-3.4.6でビルドしたもの(python-2.7.12, make-4.2.1など)

/opt/tools482 に、gcc-4.8.2に関連してるもの

/tools482 => /opt/tools482へシンボリックリンク
(追記) node-v6.8.0.tar.xzもguthubにあげました。xz-5.2.2 glibc-2.11.3 binutils-2.24-pass2 gcc-4.8.2-pass2を一緒に解凍すれば、うごくっぽい

环境

    • Windows 10 64bit Host

 

    • Vagrant 1.8.6

 

    • Virtualbox 5.1.6

 

    vagrant box : mt08/centos49-i386

步骤

准备虚拟机环境

    git for windows, Vagrant, VirtualBox をインストール

=> 在这个链接 https://github.com/mt08xx/centos49_gcc482 中的”准备虚拟机环境”部分。

虛擬機器開始運行

=> 在Windows上启动虚拟机,请点击此处:https://github.com/mt08xx/centos49_gcc482 的相关链接。

    1. 以管理员身份打开Git Bash

 

    将C:\Vagrant\centos49设为工作文件夹

I apologize, but I cannot complete your request as the provided information appears to be incomplete. Could you please provide the sentence or phrase you want me to paraphrase into Chinese?

引入gcc-4.8.2环境。

=> “安装 gcc 4.8.2 环境” – https://github.com/mt08xx/centos49_gcc482

    1. (主机) 打开管理者 git bash,进入工作文件夹,进行 git clone

cd /c/vagrant/centos49
git clone https://github.com/mt08xx/centos49_gcc482.git

=> 从虚拟机中,可以使用 ls -l /vagrant/centos49_gcc482/binary 命令来查看文件。

(虚拟机)以下是复制粘贴的内容

#
sudo mkdir -p /opt/tools482 /opt/tools346 /var/log/porg
sudo chmod 777 -R /opt/tools482 /opt/tools346 /var/log/porg
sudo chown vagrant.vagrant /opt/tools482 /opt/tools346 /var/log/porg
sudo ln -svf /opt/tools482 /
#
PATH=/opt/tools482/bin:/opt/tools346/bin:$PATH
grep /opt/tools482 .bashrc || echo ‘PATH=/opt/tools482/bin:/opt/tools346/bin:$PATH’ >> $HOME/.bashrc
#
tar zxvf /vagrant/centos49_gcc482/binary/porg-0.10.porg.tar.gz -C /
tar zxvf /vagrant/centos49_gcc482/binary/tar-1.29.porg.tar.gz -C /
hash -r
#
#
# 复制文件
mkdir -p /tools482/include/
cp -rv /usr/include/* /tools482/include/
#
#
# 解压文件
cd $HOME
DIR_WORK_PORGBALL=$HOME/work_porg
for f in xz-5.2.2 python-2.7.12 make-4.2.1 binutils-2.24-pass2 glibc-2.11.3 libstdc++-4.8.2 gcc-4.8.2-pass2 ; do echo $f
rm -rfv $DIR_WORK_PORGBALL
mkdir $DIR_WORK_PORGBALL
porgball -e –root=$DIR_WORK_PORGBALL /vagrant/centos49_gcc482/binary/$f.porg.tar.*
porg -lp $f “cp -r $DIR_WORK_PORGBALL/* /”
rm -rf $DIR_WORK_PORGBALL
hash -r
done

通过 gcc -v 检查,版本是否为 4.8.2?

[vagrant@localhost ~]$ gcc –version
gcc (GCC) 4.8.2
Copyright (C) 2013 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.

[vagrant@localhost ~]$

node.js v6.8.0的构建

    1. 以下是路径的设置(是否可以写在.bashrc文件中)

路径 = /opt/tools482/bin:/opt/tools346/bin:$ PATH

以下是复制粘贴的内容

导出MAKEFLAGS=’-j 3′
DIR_INST_482=/opt/tools482
DIR_WORK=$ HOME / work
#
mkdir -p $ {DIR_WORK}
cd $ {DIR_WORK}
#
#
NODEJS_VER=6.8.0
wget –no-check-certificate https://nodejs.org/dist/v $ {NODEJS_VER} / node-v $ {NODEJS_VER} .tar.gz
tar zxf ./node-v $ {NODEJS_VER} .tar.gz
cd node-v $ {NODEJS_VER}
#
时间{日期> build.log; \
./configure –prefix = $ {DIR_INST_482} 2>和1 | tee -a ./build.log; \
日期> build.log; \
CC = $ {DIR_INST_482} /bin/i686-pc-linux-gnu-gcc make 2>和1 | tee -a ./build.log; \
日期>> ./build.log; }
#
#porg用于管理安装文件
porg -lD -E $ HOME:/tmp “CC = $ {DIR_INST_482} /bin/i686-pc-linux-gnu-gcc make install”

考试 shì)

    1. 关闭客人的防火墙。

 

    1. 停止防火墙

 

    1. sudo /etc/rc.d/init.d/iptables stop

 

    1. sudo chkconfig iptables off

 

    1. chkconfig –list iptables

执行示例
[vagrant@localhost ~]$ sudo /etc/rc.d/init.d/iptables stop
正在刷新防火墙规则: [ OK ]
正在将链的策略设置为ACCEPT:filter [ OK ]
正在卸载iptables模块: [ OK ]
[vagrant@localhost ~]$ sudo chkconfig iptables off
[vagrant@localhost ~]$ chkconfig –list iptables
iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off

运行node的express

DIR_WORK=$HOME/work
mkdir -p ${DIR_WORK}
cd ${DIR_WORK}
#
# node版本
node -v
#
npm install -g express-generator
express myapp
cd myapp
npm install
DEBUG=myapp:* npm start

从主机的浏览器中打开http://localhost:33000。(在agrantfile中,将主机的33000端口转发到虚拟机的3000端口)
=> Express 欢迎使用Express 和显示。

广告
将在 10 秒后关闭
bannerAds