openresty rpm编译 nginx-module-vts 模块

安装依赖

yum install -y rpm-build redhat-rpm-config rpmdevtools yum-utils
yum install -y gcc gcc-c++ pcre zlib openssl ccache
yum install -y openssl-devel zlib-devel pcre-devel gcc make perl perl-Data-Dumper libtool ElectricFence systemtap-sdt-devel valgrind-devel

建文件夹

mkdir -p /tmp/openresty-tmp/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

下载依赖

git clone https://github.com/vozlt/nginx-module-vts.git /tmp/openresty-tmp/nginx-module-vts
#git clone https://gitee.com/wangxiaoming_936/nginx-module-vts.git  /tmp/openresty-tmp/nginx-module-vts

git clone https://github.com/openresty/openresty.git  /tmp/openresty-tmp/openresty
#git clone https://gitee.com/mirrors_openresty/openresty_1.git  /tmp/openresty-tmp/openresty

git clone https://github.com/openresty/openresty-packaging.git  /tmp/openresty-tmp/openresty-packaging
#git clone https://gitee.com/mirrors_openresty/openresty-packaging.git /tmp/openresty-tmp/openresty-packaging

下载源码

wget https://openresty.org/download/openresty-1.21.4.1.tar.gz -P /tmp/openresty-tmp/rpmbuild/SOURCES/

理论上版本差异不影响后续操作

环境准备

echo '%_topdir /tmp/openresty-tmp/rpmbuild' >  $HOME/.rpmmacros

cp  /tmp/openresty-tmp/openresty-packaging/rpm/SOURCES/*  /tmp/openresty-tmp/rpmbuild/SOURCES/

cp  /tmp/openresty-tmp/openresty-packaging/rpm/SPECS/*.spec  /tmp/openresty-tmp/rpmbuild/SPECS/

cp /tmp/openresty-tmp/openresty/patches/* /tmp/openresty-tmp/rpmbuild/SOURCES/

cd /tmp/openresty-tmp/rpmbuild/SPECS

vim openresty.spec
--add-module=/tmp/openresty-tmp/nginx-module-vts \
image.png

开始编译

以下rpmbuild提示缺少文件的话,需要查看对应的spec,查看Source对应的url并下载到对应位置

#wget https://www.zlib.net/zlib-1.2.13.tar.xz -P /tmp/openresty-tmp/rpmbuild/SOURCES/ --no-check-certificate
rpmbuild  -ba openresty-zlib.spec
yum install -y ../RPMS/x86_64/openresty-zlib-*

#wget https://www.openssl.org/source/openssl-1.1.1s.tar.gz -P  /tmp/openresty-tmp/rpmbuild/SOURCES/ --no-check-certificate
rpmbuild  -ba openresty-openssl111.spec
yum install -y ../RPMS/x86_64/openresty-openssl111-*

#wget https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.bz2 -P  /tmp/openresty-tmp/rpmbuild/SOURCES/ --no-check-certificate
rpmbuild  -ba openresty-pcre.spec
yum install -y ../RPMS/x86_64/openresty-pcre-*

rpmbuild -ba openresty.spec

以下几个是生产安装需要的rpm包

[root@localhost SPECS]#ls -l /tmp/openresty-tmp/rpmbuild/RPMS/x86_64| grep -v -E 'debug|devel' | awk '{print $NF}'
openresty-1.21.4.1-1.el7.x86_64.rpm
openresty-openssl111-1.1.1s-1.el7.x86_64.rpm
openresty-pcre-8.45-1.el7.x86_64.rpm
openresty-zlib-1.2.13-1.el7.x86_64.rpm

参考链接:
openresty rpm 构建_51CTO博客_openresty 官网
openresty监控模块nginx-module-vts编译安装

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容