75

Ubuntu10.04でkdevelop3.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を再作成するにはどうすればよいですか?

4

10 に答える 10

154

実行してみてください

autoreconf --force --install
./configure
make

プロジェクトのルート ディレクトリにあります。

それでも問題が解決しない場合は、make maintainer-clean最初に実行してから手順 1 に進みます。

それでも問題が解決しない場合は、 を実行make maintainer-cleanしてから、プロジェクトのルート ディレクトリに生成されたすべてのファイルを削除します。、aclocal.m4任意のディレクトリm4、任意のディレクトリ、、、、、、、、autom4te.cacheなどを含みます。その後、ステップ 1 に進みます。configureMakefile.inconfig.hconfig.h.inconfig.statuslibtoolltmain.sh

これが機能する理由: libtoolaclocal.m4は両方とも、ビルド システムによって生成されるファイルです。それらが同期していない場合 (異なるバージョンのビルド ツールによって生成された場合)、このエラーが発生します。通常は発生しませんが、生成されたファイルをソース管理にチェックインする場合などに発生する可能性があります。

このソリューションが行うことは、自動生成されたすべてのファイルを削除して再生成することです。それらが消去されて再生成されると、同期が失われることはありません。

于 2010-07-08T15:43:39.803 に答える
12

試す

autoreconf -i

-iオプションは重要です。

于 2011-01-09T15:00:00.120 に答える
3

バージョンの異なる 2 つの libtool をインストールした可能性があります。(コマンド ラインにapt-get remove all入力したときに何も表示されなくなるまで)試してから、好きなものを試してください。which libtoolapt-get install

于 2012-03-21T08:26:34.487 に答える
1

alocal を実行してみる

于 2010-06-22T21:02:08.383 に答える
0

システムのlibtoolをアンインストールし、アップストリームからインストールすることを解決します:git clone git://git.savannah.gnu.org/libtool.git

sudo apt-get install texinfo autoconf automake make
./bootstrap
。/構成、設定
作る
sudo make install
于 2012-12-12T10:47:57.777 に答える