.so和.lo文件有什么区别?

roc*_*ddy 7 linux shared-libraries

我知道.so文件是一个类似于Windows中的.dll文件的共享库文件,但是.lo文件怎么样?

Cob*_*ast 15

.o  object         (contains compiled code)
.lo library object (contains information for building a .so with `libtool`)
.so shared object  (indeed compareable to a DLL)
.ko kernel object  (usually kernel modules)
Run Code Online (Sandbox Code Playgroud)

请参阅http://www.delorie.com/gnu/docs/libtool/libtool_8.html

  • 它说有点模糊.*.lo(和*.la)是包含libtool的一些定义的文本文件.如果你不使用libtool - 你不需要它.它只是与相应*.o捆绑在一起的一些提示.*.la为*.so提供相同的用途,这是一个共享库. (2认同)
  • 他的意思是libtool可以使用这些文件来组装*.so(和*.la).libtool是一个旨在帮助共享库的脚本,但它很可能它现在失去了它的相关性 - 对于我在linux编程中的岁月,我从未见过使用它的必要性. (2认同)