【发布时间】:2021-05-15 22:10:54
【问题描述】:
我不熟悉构建 RPM 包并为此编写 spec 文件。
我必须编写一个规范文件,用于从github 编写的源代码golang 构建一个包。
我没有安装golang,而是尝试下载tar并解压缩并使用它,因为生产系统中不允许安装它。
一切工作正常,除了当我尝试使用bin/go build 构建代码时失败并显示系统头文件:fatal error: systemd/sd-journal.h: No such file or directory。
当我在该系统上安装 system-devel 软件包时,这很有效。
但是如何通过在规范文件中提及而不是手动安装它。
当我在BuildRequires 或Requires 部分中指定它时,它在启动时失败。
我不能yum install 因为这需要 sudo 访问权限并且 rpm 正在使用非 sudo 访问权限构建。
我还能如何安装它,任何建议都是可观的。
谢谢
【问题讨论】:
-
如答案中所述,您需要安装这些东西。如果您的机器上没有 root,请考虑building the RPM within a container 或 VM。
-
@msuchy:感谢您的回复,它有帮助。我主要使用了这个页面的概念。但是我认为在构建之前安装依赖项是独立于 golang 概念的,所以我一直在寻找一个来安装 golang 包工作所需的那些包。
标签: linux centos package rpm rpm-spec