编译时如何处理lib依赖关系?

时间:2020-01-27 19:17:43

标签: c gcc compilation static-libraries ar

假设我有两个静态库:libAlibB,而libB使用libA

对于每个库libX,假设hXlibX的标头目录,而dXlibX的文件目录。

现在,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

1 个答案:

答案 0 :(得分:1)

是的,必须在命令行上列出所有必需的静态库。这些只是提供.o文件的特殊存档文件。就像您无法忽略所需的.o文件一样,您也无法忽略所需的存档。

相关问题