本文主要是介绍Linux下QT生成的(.o)、(.a)、(.so)、(.so.1)、(.so.1.0)、(.so.1.0.0)之间的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
记录一下:
Linux系统下编译动态库会生成多个.so文件
(1)Linux 下 QT 生成的(.o)、(.a)和(.so)三个文件的区别
(.o)就相当于windows里的obj文件;
(.a)即 linux 下的静态链接库(Statically Linked library),或称静态库;
(.so)即 linux 下的共享库(Shared library),或称动态库;
【备注】在VS中静态库的后缀名为(.lib);动态库的后缀名为(.dll)。
(2)Linux 下 QT 生成的(.so)、(.so.1)、(.so.1.0)和(.so.1.0.0)四个文件的区别
QT在生成动态库时,会默认生成(.so)、(.so.1)、(.so.1.0)、(.so.1.0.0)四个文件。
其中,(.so.1.0.0)为实际的动态库文件,(.so)、(.so.1)、(.so.1.0)均为软链接,都是指向(.so.1.0.0)的链接文件,为了版本控制。
这篇关于Linux下QT生成的(.o)、(.a)、(.so)、(.so.1)、(.so.1.0)、(.so.1.0.0)之间的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!