C

struct blkid_struct_dev 在哪裡定義?

  • March 30, 2017

blkid.h typedef 如下:

typedef struct blkid_struct_dev *blkid_dev;

這是 blkid.h 中標記 blkid_struct_dev 的唯一出現。

grep -rl blkid_struct_dev /usr/include

僅返回 /usr/include/blkid/blkid.h。所以我假設該結構是在我沒有安裝的 -dev 包中的某個地方定義的(除了它也沒有出現在我的 Slackware 盒子上的其他任何地方,並且 Slackware 包含所有標頭檔及其包)。

這個結構在哪裡定義?

我在我的 Ubuntu PC 上遇到了同樣的問題,只能找到結構的聲明。事實證明,該定義位於 util-linux 原始碼的 blkidP.h 文件中。由於只需要 blkid.h 中的聲明才能使用該庫編譯程序,因此不需要 blkidP.h。只需要編譯庫。

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