Name: my package
Version: 1.0.0
Release: 1%{?dist}
Summary: My first rpm package.
License: Apache License, Version 2.0
Source0: %{name}-%{version}.tar.gz
Prefix: /opt/my-path
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}
%description
Testing the package
%prep
%setup -q
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}/%{prefix}
cp %{_sourcedir}/libaws-cpp-sdk-s3.so %{buildroot}/%{prefix}
cp %{_sourcedir}/libaws-cpp-sdk-core.so %{buildroot}/%{prefix}
cp %{_sourcedir}/libuv.so.1 %{buildroot}/%{prefix}
cp -R * %{buildroot}/%{prefix}
%post
%preun
%clean
rm -rf %{buildroot}
%files
%{prefix}/%{name}
%{prefix}/libaws-cpp-sdk-s3.so
%{prefix}/libaws-cpp-sdk-core.so
%{prefix}/libuv.so.1
%changelog
* Tue Sep 19 2023 Author: test - 1.0.0
- Initial rpm package release
1. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/my/shared/library/path2. export PATH=$PATH:/my/binary/path in .bashrc
您的包应在
/etc/profile.d
中创建一个文件。默认的 /etc/bashrc
和 /etc/profile
脚本都获取此目录中的所有文件。例如,gawk
和less
包都使用这种机制。
但是:如果您正在构建和安装 RPM,则不需要 需要 设置
LD_LIBRARY_PATH
。您应该将共享库安装到标准目录中。