0

在 grub2/grub-core 的 Makefile.core.def 中,

module = {
    name = regexp;
    common = commands/regexp.c;
    common = commands/wildcard.c
    ldadd = libgnulib.a;
    cflags = '$(CFLAGS_POSIX) $(CFLAGS_GNULIB)';
    cppflags = '$(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB)'
};

ldadd 是做什么的?libgnulib.a 在哪里?我试图在 grub 目录中搜索 libgnulib.a 但我找不到它。我也尝试在网上搜索,但找不到任何信息。

谢谢,马特

4

1 回答 1

1

您所指的构造实际上在去年 11 月的上游项目中消失了,这个 commit。该regexp模块现在只是gnulib/regex.c直接包含。

在此之前,它是作为构建的一部分生成的库,并放入grub-core目录中。该ldadd指令只是使生成的 Makefile 将指定的库添加到当前模块的链接步骤。

于 2014-10-08T07:58:44.840 回答