静态库链接时的依赖关系和先后顺序

时间:2022-06-10 19:31:13

1 静态库链接时的依赖关系

静态库之间是有依赖关系的,比如A.lib依赖于B.lib、C.lib、D.lib、E.lib,因为A会使用B、C、D、E中的函数。

2 使用静态库时的先后顺序

是不是B、C、D、E一定要放在A的后面?或者说,如果自己依赖于某个库,那么自己就要放在这个库的后面?

如果是的话,为什么会这样?是所有的链接器都是这样的吗?

MSVC++12.0编译器是不管这个顺序的,gcc的未知。

3 使用静态库时必须注意依赖关系

也就是说,要使用一个lib时,要把它依赖的所有的lib都加上去。