有一些开源的跨平台项目很喜欢用libtool来编译程序
没去深入研究它,简单理解了下它的流程和基本原理
文件之间的关系
.la : .lo
根据.lo所指向的.o文件,生成.a or .so文件
根据.so等文件生成.la文件
.lo : .c
根据.c文件,生成.o文件
根据.o文件,生成.lo文件
相关命令的形式
生成test.lo
libtool --mode=compile gcc -c test.c
生成libtest.la
libtool --mode=link gcc -o libtest.la test.lo -rpath /usr/local/lib -lm
安装libtest.la
libtool --mode=install install -c libcompress.la /usr/local/lib
libtool -n --mode=finish /usr/local/lib
使用
libtool --mode=compile gcc -c main.c(自动查找和链接库)
小结
我觉的这玩意就是又封了一层,然后让你在它的这个层面上工作
本质上还是底层那一套