C 将所有对象归档到一个库中,可行吗?

C 将所有对象归档到一个库中,可行吗?,c,ffmpeg,static-libraries,unix-ar,C,Ffmpeg,Static Libraries,Unix Ar,我已经构建了ffmpeg静态库,生成了:libavformat.a,libavcodec.a,libavutil.a 在它们的源目录中,生成了所有必要的objs*.o 我使用“ar”将所有这些obj归档到一个libffmpeg.a中 命令:ar rc libffmpeg.a*.o 我注意到,在diff dirs中有一些对象具有相同的名称,例如libavformat/4xm.o和libavcodec/4xm.o 通过'nm libffmpeg.a',似乎两个OBJ都在那里 我不确定 如果obj具有

我已经构建了ffmpeg静态库,生成了:libavformat.a,libavcodec.a,libavutil.a

在它们的源目录中,生成了所有必要的objs*.o

我使用“ar”将所有这些obj归档到一个libffmpeg.a中

命令:ar rc libffmpeg.a*.o

我注意到,在diff dirs中有一些对象具有相同的名称,例如libavformat/4xm.o和libavcodec/4xm.o

通过'nm libffmpeg.a',似乎两个OBJ都在那里

我不确定

如果obj具有相同的名称和完全相同的功能符号,后一个将被替换,对吗

通过这种“ar”方式,libffmpeg.a能正常工作吗?因为有太多的符号,我无法测试每一个


谢谢你的帮助

在我链接到的那个问题中,可能有重复,不要看公认的答案。看看吉勒姆·乔弗的回答。我还添加了一条可能会有所帮助的注释。此外,如果您使用ar-t libffmpeg.a,它将显示归档文件中的文件,以便您可以验证名称重复的文件是否都在归档文件中。@Cornstales,非常感谢您的回答,我将尝试使用它。