生成 OpenSSL 3.5.0 的 RPM包案例

生成 RPM 包

如果你需要生成 OpenSSL 3.5.0 的 RPM 包,可以按照以下步骤操作:

1. 安装 RPM 构建工具

安装 RPM 构建工具:

sudo yum install -y rpm-build rpmdevtools
2. 创建 RPM 构建目录结构

创建 RPM 构建所需的目录结构:

rpmdev-setuptree
3. 复制源码包到 RPM 构建目录

将 OpenSSL 的源码包复制到 ~/rpmbuild/SOURCES 目录:

cp openssl-3.5.0.tar.gz ~/rpmbuild/SOURCES/
4. 创建 RPM SPEC 文件

~/rpmbuild/SPECS 目录下创建一个名为 openssl-3.5.0.spec 的文件,并添加以下内容:

Summary: OpenSSL 3.5.0 for CentOS
Name: openssl
Version: 3.5.0
Release: 1%{?dist}
Obsoletes: %{name} <= %{version}
Provides: %{name} = %{version}
URL: https://www.openssl.org/
License: Apache License 2.0 and OpenSSL License
Source: https://www.openssl.org/source/openssl-3.5.0.tar.gz
BuildRequires: make gcc perl
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
%global openssldir /usr/local/openssl

%description
OpenSSL RPM for version 3.5.0 on CentOS

%package devel
Summary: Development files for programs which will use the openssl library
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}

%description devel
OpenSSL RPM for version 3.5.0 on CentOS (development package)

%prep
%setup -q

%build
./config --prefix=%{openssldir} --openssldir=%{openssldir} shared zlib
make

%install
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
%make_install
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_libdir}
ln -sf %{openssldir}/lib64/libssl.so.3 %{buildroot}%{_libdir}
ln -sf %{openssldir}/lib64/libcrypto.so.3 %{buildroot}%{_libdir}
ln -sf %{openssldir}/bin/openssl %{buildroot}%{_bindir}

%clean
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}

%files
%{openssldir}
%defattr(-,root,root)
/usr/bin/openssl
/usr/lib64/libcrypto.so.3
/usr/lib64/libssl.so.3

%files devel
%{openssldir}/include/*
%defattr(-,root,root)
/usr/bin/openssl
/usr/lib64/libcrypto.so.3
/usr/lib64/libssl.so.3

%post
ln -sf /usr/local/openssl/lib64/libssl.so.3 /usr/lib64/
ln -sf /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib64/
/sbin/ldconfig

%postun
/sbin/ldconfig
5. 构建 RPM 包

使用以下命令构建 RPM 包:

rpmbuild -ba ~/rpmbuild/SPECS/openssl-3.5.0.spec

构建完成后,RPM 包将生成在 ~/rpmbuild/RPMS/x86_64 目录下(如果是 64 位系统)。

安装 RPM 包

安装生成的 RPM 包:

sudo rpm -ivh ~/rpmbuild/RPMS/x86_64/openssl-3.5.0-1.el7.x86_64.rpm --nodeps

配置动态链接库路径

安装完成后,更新动态链接库路径:

export LD_LIBRARY_PATH=/usr/local/openssl/lib64:$LD_LIBRARY_PATH
echo 'export LD_LIBRARY_PATH=/usr/local/openssl/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

验证 OpenSSL 功能

验证 OpenSSL 是否正常工作:

openssl version

如果输出显示 OpenSSL 3.5.0,则说明安装成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

完颜振江

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值