Fedora

如何將基於 debian/ubuntu 的 gnu 自動工具建構修改為 fedora 32?

  • October 12, 2020

Slurm是一個使用 gnu 自動工具建構的開源項目。

問題如下:

將autoreconf應用於項目時,創建的Makefile.in文件缺少runstatedir宏。

我正在使用 Fedora 32,在向項目所有者 (Schedmd) 送出錯誤後,我收到了 WONTFIX 解決方案,其答案如下

這是由於 Debian/Ubuntu 與 Fedora 自動工具包之間的差異。

建構工具在 Debian/Ubuntu 上進行管理——今天不會產生這樣的差異。因此我不會應用這個。

我的問題是 - 我可以修改項目中的任何內容以使其“普遍”正確 - 也就是說 - 確保 autoreconf 在 Fedora 和 Ubuntu 上都做正確的事情?

在撰寫本文時,使用的 Fedora 自動工具包是最新的:

rpm autoconf-2.69-33.fc32.noarch

我不知道 Debian/Ubuntu 中使用了哪個 autoconf 版本。

問題是最新的穩定 autoconf 版本 2.69 是八年前的 2012 年發布的。

2013 年,一位 Red Hat 雇主添加了 –runstatedir 選項(https://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commit;h=a197431414088a417b407b9b20583b2e8f7363bd)。但由於此後一直沒有穩定的版本,因此該選項從未發布過。

Debian 將更新檔添加到其 autoconf 包 ( https://sources.debian.org/patches/autoconf/2.69-11.1/add-runstatedir.patch/ ),因此您可以在野外看到該選項。但 Fedora 沒有。

到今年 2020 年 10 月底,autoconf 2.70 計劃發布(https://lists.gnu.org/archive/html/autoconf/2020-09/msg00006.html)將解決該問題。

不過,我不希望 Fedora 33 包含它。所以在明年 Fedora 34 之前,這個問題仍然存在。

除非您著急,否則解決方案就是等待。

引用自:https://unix.stackexchange.com/questions/591079