Link静态库有静态库

Link static library with static library

我有一个 Makefile.am 和两个 noinst_LIBRARIES,其中一个需要 link 另一个。

将其添加到 CFLAGS 会引发编译器警告,但据我所知,automake 喜欢将 LDADD 与库一起使用,因为它们不是完整的程序。

假设 libb.a 需要拉入 liba.a,我该怎么做?

你做不到。实际上,您正在尝试做的事情并没有真正的意义。静态库只是包含目标文件和 table 内容的档案。简而言之,您可以将静态库视为包含 .o 个文件的 .zip

链接阶段仅在编译共享对象或可执行文件时发生table。当您的程序链接到 liba.a 时,您还需要指定 -static -lb 或类似的,仅此而已。