作者:杨硕,华清远见嵌入式学院讲师。 1)基本概念 共享库也是.o文件的集合,但是这些文件由编译器按照一种特殊的方式生成(Linux中,共享库文件为"ELF"格式,共享库已经具备了可执行条件)。 共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小。 模块中各个成员的地址(变量引用和函数)都是相对地址。使用此共享库的程序在运行时,共享库被动态加载到内存中并和主程序在内存中进行链接。多个可执行程序可以共享库文件的代码段(不共享数据段)。 共享库的成员对象可以被执行(由libdl.so提供支持)。 2)如何建立和使用共享库