它是包括库的描述的文本文件。
它允许libtool创建平台独立的名称。
例如,libfoo转到:
在linux下:
/lib/libfoo.so # symlink to shared object
/lib/libfoo.so.1 # symlink to shared object
/lib/libfoo.so.1.0.1 # shared object
/lib/libfoo.a # static library
/lib/libfoo.la # libtool library
在cygwin下:
/lib/libfoo.dll.a # import library
/lib/libfoo.a # static library
/lib/libfoo.la # libtool library
/bin/cygfoo_1.dll # dll
在windows mingw:
/lib/libfoo.dll.a # import library
/lib/libfoo.a # static library
/lib/libfoo.la # libtool library
/bin/foo_1.dll # dll
因此,libfoo.la是通过libtool保存在平台之间的唯一文件,允许理解,发生了什么:
>库依赖
>实际文件名
>库版本和修订
而不依赖于具体的平台实现的库