如何构建最新的 Nodejs RPM 包
RPM 构建环境安装
1.rpm-build 安装
首先需要确认自己的 Linux 机器上是否已经安装了 rpm-build,执行 rpm-build --version
,如果返回结果表示已经安装,如果返回 rpmbuild: command not found
说明没有安装,需要我们手动安装
1 | $ sudo yum install rpm-build |
安装完成后使用 repm-build --version
验证
2.redhat-rpm-config 安装
在 CentOS 上构建时,可能需要包含 rpmbuild 构建脚本 redhat-rpm-config 。通过 rpm -q redhat-rpm-config
来 check 是否被安装,如果正确输出,表示已安装。
3.创建 RPM build 目录
1 | $ mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} |
下面这个命令会覆盖现有的 .rpmacros 文件,操作之前应该 check 是否有该文件
1 | $ echo '%_topdir %(echo $HOME)/rpmbuild' > ~/.rpmmacros |
4.可能需要的其他工具
1 | $ sudo yum install make |
到此 RPM Build 环境已经安装完成,可以 cd 到对应目录查看
RPM 包创建
1.下载最新的 node.js 包
1 | $ curl -sR -o ~/rpmbuild/SOURCES/node-v8.10.0.tar.gz http://nodejs.org/dist/v8.10.0/node-v8.10.0.tar.gz |
2.下载 RPM 包规范文件
1 | $ curl -sR -o ~/rpmbuild/SPECS/node-v8.10.0.spec https://raw.githubusercontent.com/kazuhisya/nodejs-rpm/master/nodejs.spec |
3.修改包规范文件
更新 version 字段为8.10.0 版本,如果 build 过程中相关文件不存在,可以在 https://github.com/kazuhisya/nodejs-rpm 仓库下载
4.开始构建
1 | $ rpmbuild -ba ~/rpmbuild/SPECS/node-v8.10.0.spec |
构建过程需要nodejs进行编译,构建速度依赖当前机器配置。
5.构建完成后,可以在下面目录下查看构建的 RPM 包
1 | $ cd ~/rpmbuild/RPMS/ |
rpm 方式安装验证
1 | # install node |
参考资料:
- How to build the latest node.js RPM and install it on CentOS / RedHat / Fedora
- rpm 常用命令
- RPM Documentation
转载申请
本作品采用知识共享署名 4.0 国际许可协议进行许可,转载时请注明原文链接,文章内图片请保留全部内容。