Question

Lors de la construction de mon application avec KDevelop 3.5 sur Ubuntu 10.04, je reçois les erreurs suivantes:

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

Où puis-je obtenir la version nécessaire de libtool, ou comment puis-je Recréer aclocal.m4?

Était-ce utile?

La solution

Essayez de lancer

autoreconf --force --install
./configure
make

dans le répertoire racine de votre projet.

Si cela ne fonctionne pas, essayez d'exécuter make maintainer-clean d'abord, puis passer à l'étape 1.

Si cela ne fonctionne toujours pas, exécutez make maintainer-clean, puis supprimez tous les fichiers générés dans le répertoire racine de votre projet; y compris aclocal.m4, un répertoire de m4, un répertoire de autom4te.cache, configure, Makefile.in, config.h, config.h.in, config.status, libtool, ltmain.sh, etc. Ensuite, allez à l'étape 1.

Pourquoi cette œuvres: libtool et aclocal.m4 sont les deux fichiers qui sont générés par votre système de construction. Si elles ne sont pas synchronisés (générés par les différentes versions des outils de construction), vous obtenez cette erreur. Normalement, cela ne devrait pas se produire, mais un exemple de quelque chose qui peut provoquer est lors de l'enregistrement dans les fichiers générés au contrôle de source.

Qu'est-ce que cette solution n'est de supprimer et de régénérer tous les fichiers générées automatiquement. Une fois qu'ils sont effacés et régénérés, ils ne peuvent pas être désynchronisé plus.

Autres conseils

Essayez

autoreconf -i

L'option -i est important.

Si vous utilisez Anaconda, cela pourrait être dû à libtool et autoconf de différentes sources. Vous pouvez vérifier cela en exécutant

which libtool

which autoconf

Mon libtool était de Conda et autoconf était un ensemble de système. Désinstallés autoconf et installé à nouveau en utilisant Conda

apt remove -y autoconf (Ubuntu / Debian)

conda install -c anaconda autoconf

Note:. Vous devrez peut-être installer automake trop

conda install -c anaconda automake

peut-être que vous avez installé deux libtools de version différente. Essayez de apt-get remove all (jusqu'à ce que vous obtenez rien, lorsque vous tapez which libtool dans la ligne de commande), apt-get install alors celui qui vous plaît.

Essayez de lancer aclocal

Je résoudre que la désinstallation de libtool de système et l'installation de l'amont: git clone git: //git.savannah.gnu.org/libtool.git

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

Aucune de ces travaillé.

Ensuite, cela a fonctionné:

autoconf -f
./configure
make

Aucune de ces travaillé. Après avoir désactivé l'environnement Conda, il a travaillé:

source deactivate

Je rencontre également ce problème. Dans mon cas, la sortie de ./autogen.sh, il y a:

libtoolize: Vous devez ajouter le contenu des fichiers suivants à 'aclocal.m4': libtoolize: '/aclocal/libtool.m4' libtoolize: '/aclocal/ltoptions.m4' libtoolize: « /aclocal/ltversion.m4 'libtoolize: Pensez à ajouter 'AC_CONFIG_MACRO_DIRS ([m4])' à configure.ac, libtoolize: et réexécution libtoolize et aclocal. libtoolize: Pensez à ajouter '-I m4' à ACLOCAL_AMFLAGS dans Makefile.am

.

Je viens ajouter le contenu des trois * .m4 fichiers sous / aclocal / au fichier aclocal.m4:

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

puis faire.

Voici l'erreur:

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.

Aucune de ces travaillé.

Ensuite, cela a fonctionné:

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
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top