更改其他静态库使用的静态库

我的项目中有2个库文件lib1.a和lib2.a。 Lib1.a正在使用lib2.a。 我给了lib2.a的源代码,但我没有lib1.a的源代码。 对于我的项目,我更改了lib2.a让我说我在函数中添加了一个局部变量。

我的问题,函数名称没有改变,我是否需要使用更改的lib2.a重新编译lib1.a? 无论如何,我告诉连接器“lib1.a应该使用新的lib2.a”没有lib1.a的源代码?

如果它只是像你说的那样添加了局部变量,那么就不需要重建其他库了。 这是因为静态库通常不直接相互链接,而是可执行文件最终将它们全部链接在一起。