首页 > 解决方案 > RPM:未找到 rpmbuild 文件

问题描述

我正在尝试为我的 tar.gz 创建一个非常简单的 RPM。这是我的文件:

.
├── BUILD
├── RPMS
├── SOURCES
│   └── bpf-10_24_2018.tar.gz
├── SPECS
│   └── bpf.spec
└── SRPMS

这是我的 bpf.spec:

# This is a spec file for BPF samples

%define _topdir     %(pwd)
%define name        bpf
%define release     0
%define version     10_24_2018
%define buildroot   %{_topdir}/%{name}-%{version}-root

BuildRoot:  %{buildroot}
Summary:        BPF samples
License:        -
Name:           %{name}
Version:        %{version}
Release:        %{release}
Source:         %{name}-%{version}.tar.gz
Prefix:         /usr
Group:          Verification/Tools

%description
The BPF samples test basic xdp functionality.

%prep
%setup -q

基本上我已经编译了我需要的所有东西并将它放在 tar.gz 中,现在我想为它构建 RPM。但我一直失败。在我的 tar.gz 中,我有 3 个文件,我希望在以后安装 RPM 后可以执行这些文件(xdp1、xdp2 和 xdp_redirect,都已经是可执行文件),它们都存在于 tar.gz 中。我知道我在规范中遗漏了一些东西,但不确定是什么。我不需要构建或安装任何东西,所以......

标签: rpmpackagingrpmbuildrpm-spec

解决方案


您需要填写安装和文件部分;我无法准确提供它们,因为这取决于 tar.gz 文件中的内容,但它看起来像这样:

%install
install -D -m 0755 path/in/tar/to/binary $RPM_BUILD_ROOT/usr/bin/my-binary

%files
/usr/bin/my-binary

install您将所有文件置于正确结构的部分中$RPM_BUILD_ROOT;然后在该files部分中指定哪些文件有效地包含在最终 rpm 中。


推荐阅读