在Ubuntu 10.04上使用kdevelop 3.5构建应用程序时,出现以下错误:
libtool: Version mismatch error. This is libtool 2.2.6 Debian-2.2.6a-4, but the
libtool: definition of this LT_INIT comes from libtool 2.2.6b.
libtool: You should recreate aclocal.m4 with macros from libtool 2.2.6 Debian-2.2.6a-4
libtool: and run autoconf again.
make[2]: *** [wktools4] Error 63
make[2]: Target `all' not remade because of errors.
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
*** Exited with status: 2 ***
在哪里可以获得所需的libtool版本,或者如何重新创建aclocal.m4?
最佳答案
尝试跑步
autoreconf --force --install
./configure
make
在项目的根目录中。
如果这不起作用,请尝试首先运行
make maintainer-clean
,然后转到步骤1。如果仍然不起作用,请运行
make maintainer-clean
,然后删除项目根目录中的每个生成文件;包括aclocal.m4
,任何m4
目录,任何autom4te.cache
目录,configure
,Makefile.in
,config.h
,config.h.in
,config.status
,libtool
,ltmain.sh
等。然后转到步骤1。为何起作用:
libtool
和aclocal.m4
都是由构建系统生成的文件。如果它们不同步(由生成工具的不同版本生成),则会出现此错误。通常不应该发生这种情况,但是当您将生成的文件检入到源代码管理中时,可能导致这种情况的一个例子。该解决方案的作用是删除并重新生成所有自动生成的文件。一旦删除并重新生成它们,它们将不再不同步。
关于autotools - libtool版本不匹配错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3096989/