我一直在尝试在 CentOS 8 上编译 GDAL 3.2(由于 java 项目需要 gdal32-java 提供的 gdal 绑定),但是 rpmbuild 在我进行任何更改之前一开始就失败了:
$ rpmbuild --rebuild ../gdal32-3.2.3-1.rhel8.src.rpm
Installing ../gdal32-3.2.3-1.rhel8.src.rpm
error: line 23: Unknown tag: %pgdg_set_gis_variables
请注意,源 RPM 来自 postgres 提供的 pgdg-source-common 存储库,位于https://download.postgresql.org/pub/repos/yum/srpms/common/redhat/rhel-8-x86_64
. 安装了规范文件所需的所有依赖项。
gdal32.spec 中的标记%pgdg_set_gis_variables
仅出现一次(在报告错误的行),并且似乎初始化了一些用于检索其他文件/解决依赖关系的全局变量。
通过将文件解压缩SOURCES
并注释掉这个标签 - 以及手动设置我看到未使用的预期值,我可以获得rpmbuild -ba SOURCES/gdal32.spec
,但是它在配置时失败,可能是由于缺少应该由%pgdg_set_gis_variables
(+ 在这个在这种情况下,我收到一个错误,表明尽管标签已被注释掉,但仍试图扩展标签)。
您知道我在哪里可以找到提供此标签的示例/我如何构建此 RPM 吗?
您需要
pgdg-srpm-macros
从 PGDG 存储库安装软件包以提供其自定义 RPM 宏。