当使用configure和makefile编译项目时,出现如下报错:
libtool: Version mismatch error. This is libtool 2.4.6, but the``
libtool: definition of this LT_INIT comes from libtool 2.4.7.
libtool: You should recreate aclocal.m4 with macros from libtool 2.4.6
libtool: and run autoconf again.
网上查了解决方案都是执行autoreconf -fiv
,但这个方案对我不管用。尝试修改libtool文件内的版本号,但是执行make
后这个版本号依然会被改回2.4.7导致报错。
研究了一下libtool的原理。找到了一个基于libtool的开源项目,用那里面的相关文件修改了m4/
文件夹内的文件内容,再重新执行如下语句就解决问题了。
$ aclocal
$ libtoolize
$ autoheader
$ automake --add-missing
$ autoconf
开源项目地址如下,可以试一下将其中m4/文件夹内的东西完整复制过来。
标签:版本号,mismatch,m4,version,libtool,报错,2.4 From: https://www.cnblogs.com/sethma423/p/18367313