Vya*_*lav 4 linux build configure libtool auto-generate
我对libtool的东西很新.我有一个问题,构建我的项目需要libtool 1.5,但我系统上的默认libtool(debian,squeeze)是2.2.我做的是我从源代码安装了libtool 1.5,并将其放入/ usr/local.我的PATH变量首先选择/ usr/local/bin路径.
运行autogen时,我可以看到它"看到"libtool 1.5.但是,当我运行configure脚本时,我的构建目录中会出现2.2版的libtool脚本.我不知道它来自哪里,因为我使用包管理器卸载了libtool 2.2.
你能建议如何解决这个问题吗?如何在我的构建文件夹中生成libtool脚本?与ltmain.sh有什么关系?
谢谢,维亚切斯拉夫
一个简单的解决方案可能是
$ ./configure LIBTOOL=/usr/local/bin/libtool ...
但是如果你使用古老的libtool,你也可能使用古老的autoconf,在这种情况下你必须这样做:
$ LIBTOOL=/usr/local/bin/libtool ./configure ...
或者,如果您使用csh或其变体:
$ env LIBTOOL=/usr/local/bin/libtool ./configure ...
构建目录中的libtool是从ltmain.sh生成的.文件config.status(由configure生成)运行sed脚本,该脚本使用ltmain.sh作为生成libtool的输入.当您通过autoreconf运行libtoolize时,libtoolize将ltmain.sh复制到源目录中.如果autoreconf确实在/ usr/local/bin中看到了libtool 1.5,那么源目录中的ltmain.sh应该是/usr/local/share/libtool/ltmain.sh的副本.