【发布时间】:2019-07-01 08:57:13
【问题描述】:
我正在尝试编写规范 RPM 文件来构建 RPM 包。 这实质上是我的规范文件:
[...]
Requires: nodejs java-1.8.0-openjdk java-1.8.0-openjdk-devel log4j
%define _rpmdir ../
%define _rpmfilename %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm
%define _unpackaged_files_terminate_build 0
%pre
[Some script]
%post
[Some script]
%preun
[Some script]
%postun
[Some script]
%install
[...]
%files
[...]
我已经成功地安装了带有序言 Requires 的包依赖项,期望一个不作为 yum package (tomcat8) 存在的包依赖项。我在网上查到,在centOS上的安装方式是:
wget https://harbottle.gitlab.io/harbottle-main/7/x86_64/00853071-tomcat8/tomcat8-8.5.37-2.el7.harbottle.x86_64.rpm
rpm -ivh tomcat8-8.5.37-2.el7.harbottle.x86_64.rpm
但是我应该把它放在规范文件的什么地方呢?我试图把它放在%pre 脚本中,但是rpm 上有一个锁,阻止了它的使用。我试图把它放在%install 部分,但它似乎不正确。你能帮我解决这个问题吗?有没有办法仍然把它放在Requires 序言中?
谢谢!
【问题讨论】:
标签: centos packaging rpmbuild rpm-spec