.a 就是 archive
.so 就是 shared object
Archive 相当于某个人(这个可能是你也可能是别人)在编一个程序的时候中途留下了很多 .o 文件没用光.怎么办?Archive 起来,以后写别的程序用得着.所以你的程序如果用了 archive,连接到的是“静态”库,库好像已经和你的程序化为一体,不分彼此.
Shared object 呢?你的心态又不一样了.你写程序,写着写着发现很多程序都要用到同一段代码,怎么办?直接 copy 过去省事啊,不过维护起来麻烦.用 archive?也还行,只是有点浪费空间了.那怎么办?一拍大腿,点子来了,share 一下这个 object,这样既方便维护,又节省空间.
现实环境里两种情况都有,自己想想清楚每一种的目的是要干啥就行了.
=========================
.o 就相当于windows里的obj文件
.a 是好多个.o合在一起,用于静态连接
.so 是shared object,用于动态连接的,和dll差不多
文章的脚注信息由WordPress的wp-posturl插件自动生成