假设我有两个静态库: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
?
最佳答案
是的,必须在命令行上列出所有必需的静态库。这些只是提供.o
文件的特殊存档文件。就像您不能忽略必需的.o
文件一样,您也不能忽略必需的档案。
关于c - 编译时如何处理lib依赖关系?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59937515/