假设我有两个静态库:libA
和libB
,而libB
使用libA
。
对于每个库libX
,假设hX
是libX
的标头目录,而dX
是libX
的文件目录。
现在,libB
的用户想要使用C.c
编译源代码libB
时会发生什么?他必须知道libB使用libA,所以必须输入:
gcc -IhB -IhA C.c -lA -LdA -lB -LdB
或者有一种方法可以使libB
自动向gcc说“使用” libA
,以便用户可以输入:
gcc -IhB -IhA C.c -LdA -lB -LdB
?
答案 0 :(得分:1)
是的,必须在命令行上列出所有必需的静态库。这些只是提供.o
文件的特殊存档文件。就像您无法忽略所需的.o
文件一样,您也无法忽略所需的存档。