【发布时间】:2019-03-29 06:00:44
【问题描述】:
这是我第一次尝试创建 Linux RPM,我正在探索它作为分发主要由文件和一些配置组成的软件包的解决方案。
我已经阅读了一些文档,但我觉得有些部分在构建系统和目标安装系统之间有歧义。
我为 rpmbuild 编写了一个 SPEC 文件,它构建了 RPM,但是当我将它安装在本地系统上时,它似乎没有做任何事情。它只是说它已安装。
我已经删除了几乎所有方面,我只是试图让 RPM 来创建一个目录。它没有被创建。
我在这里做错什么了吗?
%define _topdir /sourcecode/agent/rpm/
%define name agent
%define release 0
%define version 0.1a
%define buildroot %{_topdir}/BUILD
BuildRoot: %{buildroot}
Summary: agent
License: GNU
Name: %{name}
Version: %{version}
Release: %{release}
Source0: hello.sh
Prefix: /opt
Group: PhysicalEdge
%prep
%build
%install
mkdir -p /opt/edgeagent
cp %{SOURCE0} /opt/edgeagent/hello.sh
%files
%defattr(-,root,root)
我遇到的另一个问题是包含文件,我已将它们列在 Source 的(Source0:hello.sh)中。我是在 %files 指令中列出它们在源系统上开始的位置,还是在目标系统上结束的位置?
我现在正在尝试将文件 hello.sh 放入目标系统上的 /opt/agent/ 中。
谢谢!
【问题讨论】:
标签: linux rpm rpmbuild rpm-spec