Certaines macros M4 ne semblent pas être définies

56

J'essaye de réinstaller pacman sur ma distribution Arch Linux. Lorsque j'exécute le script de configuration "configure.ac", je reçois un tas de macros non définies:

error: possibly undefined macro: AM_INIT_AUTOMAKE.
If this token and others are legitimate, please use m4_pattern_allow.
See the autoconf documentation.
error: possibly undefined macro: AC_PROG_LIBTOOL
error: possibly undefined macro: AM_GNU_GETTEXT 
error: possibly undefined macro: AM_GNU_GETTEXT_VERSION
error: possibly undefined macro: AM_CONDITIONAL

Est-ce que quelqu'un sait ce qui ferait que ces macros ne soient pas définies? Venant d’Ubuntu (où tout fonctionne et est donc ennuyeux), je ne sais pas vraiment comment faire automake.

SirTasty
la source
Pourquoi construisez-vous à partir de la source? Pourquoi ne pas télécharger les paquets sur une autre machine, les copier et les extraire à la racine selon wiki.archlinux.org/index.php/…
jasonwryan
Il semble que quoi? Est-ce que c'est toute la séquence des erreurs? Comment avez-vous récupéré la source?
Gilles 'SO- arrête d'être méchant'
2
Jason, je n'ai pas pacman sur mon autre machine et je préférerais ne pas télécharger un autre gestionnaire de paquets. De plus, si je ne construisais pas à partir de la source, je n'aurais pas cette merveilleuse opportunité d'apprendre sur M4 et Automake. Désolé pour le mauvais montage, je l'ai enlevé. Oui, c'est toute la séquence des erreurs. J'ai récupéré le code source sur le site Web ArchLinux à l'adresse projects.archlinux.org/pacman.git avec wget.
SirTasty
configure.ac n'est pas un script configure et n'est pas exécutable.
Qdii
3
"Pourquoi construisez-vous à partir de la source?" Aucune de vos affaires gd :)
Greg Schmit

Réponses:

65

Essayez ceci, peut-être que ça peut aider:

autoreconf --install

(Voir la page de manuel, il y a une --forceoption aussi)

Stéphane Gimenez
la source
programme de cvs non trouvé; autopoint a échoué avec le statut de sortie 1. J'installe des cvs à partir de sources, je vous ferai savoir comment ça se passe.
SirTasty
1
@SirTasty: cvs ?? hmm, peut-être essayer d'utiliser autoconfet automakedirectement?
Stéphane Gimenez
Autoconf me donne les avertissements de macro non définis. automake me donne (lignes séparées par des points-virgules) Makefile.am:2: WANT_DOC does not appear in AM_CONDITIONAL:; Makefile.am: required file ./ChangeLog not found ; configure.ac:57: fichier requis config.h.in not found`
SirTasty
Je ne suis pas un expert en autotools (ni un fan non plus). Peut-être attendre que quelqu'un se présente… Par hasard, qu'en est-il en aclocalpremier?
Stéphane Gimenez
J'ai eu une erreur autoconf similaire (sur redhat fc19) et le autoreconf --install l'a résolu.
gaoithe
24

Les macros dans le message d'erreur que vous avez posté sont définis par automake et libtool ; il semble que vous deviez installer ces paquets.

Alors essaye autoreconf --install

Riccardo Murri
la source
Ces deux paquets sont installés, ou au moins "qui fait automatiquement" et "quel libtool" renvoie des résultats raisonnables.
SirTasty
2
@SirTasty Ensuite, vous devrez probablement lancer "autoreconf" comme le suggère Stéphane.
Riccardo Murri
6
Sur mon système CentOS6.7, je devais le faire:sudo yum install autoconf automake libtool cmake autoconf-archive gcc-c++
Mark Hudson
1
Pour moi, avec l’erreur configure.ac:118: error: possibly undefined macro: AC_MSG_ERRORsur Manjaro Linux, l’installation autoconf-archivea fonctionné, bien qu’une autre erreur ait eu lieu, qui a également été évitée. Les autres packages ont été installés. Juste pour information, plus de détails à ce sujet commencent par github.com/NixOS/nix/pull/3154#issuecomment-545207139 .
James Ray
4

Pour tous ceux qui cherchent: Même si automake et libtool sont des candidats très probables, certains systèmes n’installeront pas gettext automatiquement. Ceci est également requis.

Matthieu
la source
1

J'étais assez confus en obtenant ces erreurs, car tout était installé et autoreconf --install ne m'aidait pas. Le problème venait d'être corrompu et supprimé de aclocal.m4 avant qu'autoreconf ne résolve le problème.

tss
la source