Frage

Beim Bau meiner Anwendung mit kdevelop 3.5 auf Ubuntu 10.04, ich folgende Fehlermeldungen erhalten:

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 ***

Wo kann ich die benötigte Version von libtool bekommen, oder wie kann ich recreate aclocal.m4?

War es hilfreich?

Lösung

Versuchen Sie,

autoreconf --force --install
./configure
make

im Stammverzeichnis Ihres Projektes.

Wenn das nicht funktioniert, versuchen make maintainer-clean zuerst ausgeführt wird und dann gehen Sie zu Schritt 1

Wenn das immer noch nicht funktioniert, laufen make maintainer-clean, löschen Sie dann jede erzeugte Datei im Stammverzeichnis des Projekts; einschließlich aclocal.m4, jedes m4 Verzeichnis, jedes autom4te.cache Verzeichnis, configure, Makefile.in, config.h, config.h.in, config.status, libtool, ltmain.sh usw. Dann gehen Sie zu Schritt 1.

Warum dies funktioniert: libtool und aclocal.m4 sind beide Dateien, die von Ihrem Build-System erzeugt werden. Wenn sie synchron sind aus (erzeugt durch verschiedene Versionen der Build-Tool), dann erhalten Sie diesen Fehler. Normalerweise geschieht das sollte nicht, aber ein Beispiel für etwas, das sie verursachen kann, wenn Sie in generierten Dateien zur Quellcodeverwaltung überprüfen.

Was diese Lösung tut, ist Lösch- und regenerieren alle automatisch generierten Dateien. Sobald sie gelöscht und regeneriert, können sie nicht mehr synchron sein wird.

Andere Tipps

Versuchen

autoreconf -i

Die -i Option ist wichtig.

Wenn Sie Anaconda verwenden, dann könnte dies aus verschiedenen Quellen zu libtool und autoconf fällig. Sie können dies durch das Ausführen

which libtool

which autoconf

Meine libtool war von Conda und autoconf war ein Systempaket. Uninstalled autoconf und installiert es wieder Conda

mit

apt remove -y autoconf (Ubuntu / Debian)

conda install -c anaconda autoconf

. Hinweis: Sie müssen möglicherweise auto installieren

conda install -c anaconda automake

Vielleicht haben Sie zwei libtools unterschiedlicher Version installiert. Versuchen Sie, apt-get remove all (bis Sie nichts bekommen, wenn Sie which libtool in der Befehlszeile), dann apt-get install die Ihnen gefällt.

Versuchen aclocal

Laufen

ich lösen, dass die Deinstallation Systems libtool und Installation von stromaufwärts: git clone git: //git.savannah.gnu.org/libtool.git

sudo apt-get install texinfo autoconf automake make
./bootstrap
./configure
make
sudo make install

Keine der oben gearbeitet.

Dann das funktionierte:

autoconf -f
./configure
make

Keine der oben gearbeitet. Nachdem ich die Conda Umgebung deaktiviert, es hat funktioniert:

source deactivate

Ich begegne auch dieses Problem. In meinem Fall in der Ausgabe von ./autogen.sh gibt es:

libtoolize: Sie sollten den Inhalt der folgenden Dateien zu 'aclocal.m4' hinzufügen: libtoolize: '/aclocal/libtool.m4' libtoolize: '/aclocal/ltoptions.m4' libtoolize: ‚/aclocal/ltversion.m4 'libtoolize: Erwägen Sie 'AC_CONFIG_MACRO_DIRS ([m4])' zu configure.ac, libtoolize: und rerunning libtoolize und aclocal. libtoolize: Erwägen Sie '-I m4' zu ACLOCAL_AMFLAGS in Makefile.am

.

ich hängen Sie einfach den Inhalt der drei * .M4 Dateien unter / aclocal / zum aclocal.m4-Datei:

cat <a path>/aclocal/libtool.m4 <a path>/aclocal/ltoptions.m4 <a path>/aclocal/ltversion.m4 >> aclocal.m4 

dann machen.

Hier ist der Fehler:

libtool: Version mismatch error.  This is libtool 2.4.2 Debian-2.4.2-1.11, but the
libtool: definition of this LT_INIT comes from libtool 2.4.6.
libtool: You should recreate aclocal.m4 with macros from libtool 2.4.2 Debian-2.4.2-1.11
libtool: and run autoconf again.

Keine der oben gearbeitet.

Dann das funktionierte:

wget http://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz -O /root/libtool-2.4.6.tar.gz
tar xzvf /root/libtool-2.4.6.tar.gz -C /root
cp -f /usr/share/libtool/build-aux/ltmain.sh /usr/share/libtool/build-aux/ltmain_sh
cp -f /root/libtool-2.4.6/build-aux/ltmain.sh /usr/share/libtool/build-aux/ltmain.sh

autoreconf -fi
./configure
make
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top