.o是目标对象文件,可以添加到工程中去, .a是存档文件也可以添加到工程中去, 那么请问一下大家,二者有哪些区别呢?? 欢迎发言!
谢谢各位的发言,使在下增长了见识
还有
.o是生成的obj文件,.a实际上是.o的归档文件,相当于一个压缩包。 .a .o都可以当成lib来使用。 ar ruv xxxx.a x1.o x2.o
再补充一下:
.o 就相当于windows里的obj文件
.a 是好多个.o合在一起,用于静态连接
.so 是shared object,用于动态连接的,和dll差不多
二者之间可以通过工具转换,举个例子,在ppc架构下
使用arppc -x libarch.a 可以把libarch.a下所有的o文件都解出来。
使用arppc ru libarch.a cacheAlib.o 可以把cacheAlib.s加到libarch.a里去。
.a是一堆.o文件