fdutils の Fedora 25 インストールに linux/ext2_fs.h がありません。

fdutils の Fedora 25 インストールに linux/ext2_fs.h がありません。

Fedora 25にfdutilsをインストールしようとしましたが、./configureを実行すると次のように出力されます。

checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking whether gcc needs -traditional... no
checking for a BSD-compatible install... /bin/install -c
checking whether ln -s works... yes
checking for install-info... /sbin/install-info
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking linux/ext_fs.h usability... no
checking linux/ext_fs.h presence... no
checking for linux/ext_fs.h... no
checking linux/xia_fs.h usability... no
checking linux/xia_fs.h presence... no
checking for linux/xia_fs.h... no
checking sys/sysmacros.h usability... yes
checking sys/sysmacros.h presence... yes
checking for sys/sysmacros.h... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating doc/Makefile
config.status: creating config.h
config.status: config.h is unchanged

具体的には、linux/ext_fs.hとlinux/xia_fs.hの検索に失敗した結論を参照してください。これらのヘッダーファイルがないため、make の実行に失敗するため、fdutils パッケージをインストールできません。を試しましたが、apt-get install e2fslibsパッケージが見つかりませんでした。

答え1

あなたのタイトルは、あなたがFedoraを使用していることを示します。ただし、使用しているパッケージマネージャaptではこれは不可能です。dnf

あなたできるこれを行う:yum install e2fsprogs-devel

しかし、ext_fs.hはありません。あなたが達成したいものが何であるかは明らかではありません。ソフトウェアが長い間更新されていないと仮定します。このパッケージをインストールしても望ましい結果が出るという保証はありません。

答え2

同じ問題に直面して、Fedora 23環境を再コンパイルしました。ただし、正確に言うと、問題はEXTファイルまたはXIAファイルシステムが欠落しているわけではなく、どちらも設定スクリプトによって処理されますが(または現在の環境にない場合はオプトアウト)、fdmountコマンドはEXT2ファイルシステムが存在すると予想します。したがって、対応するヘッダファイルが必要です。最新のLinuxディストリビューションでは、このファイルを別の場所に移動するようです。次のパッチを使用しました。

--- fdutils-5.5/src/fdmount.c.ORIG      2005-03-03 23:09:16.000000000 +0100
+++ fdutils-5.5/src/fdmount.c   2018-03-06 15:11:02.924092624 +0100
@@ -22,7 +22,7 @@
 #include <linux/ext_fs.h>
 #endif

-#include <linux/ext2_fs.h>
+#include <ext2fs/ext2_fs.h>

 #ifdef HAVE_LINUX_XIA_FS_H
 #include <linux/xia_fs.h>

これとパッケージの存在でe2fsprogs - 開発(dnf コマンドを使用したインストール) パッケージをコンパイルしてインストールできます。おそらくXIAFS(Minixファイルシステム)と古いEXTFS(以前のLinuxファイルシステム)を見逃すことはありません。このようにフォーマットされた非常に古いフロッピーディスクを除いて(おそらくそうではないかもしれません)。

関連情報