我最近在Linux上阅读了很多关于共享库的内容,这是我学到的:
soname
,包括其主要版本号。类似于:libfoo.so.1
libfoo.so.1.0
/usr/local/lib
时,如果运行ldconfig
,它将读取soname
并创建一个名为libfoo.so.1
的符号链接,指向libfoo.so.1.0
1}}。libfoo.so
指向libfoo.so.1.0
。这通常由 development 包完成(当打包库时)。这是对的吗?
答案 0 :(得分:18)
建议阅读:
Ulrich Drepper的如何编写共享库:http://www.akkadia.org/drepper/dsohowto.pdf
Ulrich Drepper在图书馆设计,实施和维护方面的良好实践:http://www.akkadia.org/drepper/goodpractice.pdf
dsohowto更加详细。好的实践是快速阅读。