当我安装 rpm 包(添加)并删除我的包(删除)时,如何将 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/my/path 和我的二进制 PATH 添加到 .bashrc

问题描述 投票:0回答:1
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

我想使用我的 rpm 包创建系统变量..

假设当我安装我的包时它应该创建两个路径

1. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/my/shared/library/path2. export PATH=$PATH:/my/binary/path in .bashrc

当我删除包时,它会从 .bashrc 中删除这两行

linux bash rpm
1个回答
0
投票

您的包应在

/etc/profile.d
中创建一个文件。默认的
/etc/bashrc
/etc/profile
脚本都获取此目录中的所有文件。例如,
gawk
less
包都使用这种机制。


但是:如果您正在构建和安装 RPM,则不需要 需要 设置

LD_LIBRARY_PATH
。您应该将共享库安装到标准目录中。

© www.soinside.com 2019 - 2024. All rights reserved.