Algumas macros M4 não parecem definidas


56

Estou tentando reinstalar o pacman na minha distribuição do Arch Linux. Quando executo o script de configuração "configure.ac", recebo várias macros indefinidas:

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

Alguém sabe o que faria com que essas macros fossem indefinidas? Tendo vindo do Ubuntu (onde tudo simplesmente funciona e, portanto, é chato), eu realmente não sei sobre automake.


Por que você está construindo a partir da fonte? Por que você não baixar os pacotes em outra máquina, copiá-los em toda e extraí-los para a raiz como por wiki.archlinux.org/index.php/...
jasonwryan

Parece que o que? Essa é toda a sequência de erros? Como você recuperou a fonte?
Gilles 'SO- stop be evil'

2
Jason, não tenho pacman na minha outra máquina e prefiro não baixar outro gerenciador de pacotes. Além disso, se eu não estivesse construindo a partir da fonte, não teria essa oportunidade maravilhosa de aprender sobre o M4 e o automake. Desculpe pela edição ruim, eu a removi. Sim, essa é toda a sequência de erros. Eu recuperei a fonte do site do ArchLinux em projects.archlinux.org/pacman.git com o wget.
precisa saber é o seguinte

configure.ac não é um script de configuração e não pode ser executado.
Qdii

3
"Por que você está construindo a partir da fonte?" Não é da sua conta gd :)
Greg Schmit

Respostas:


65

Tente isso, talvez possa ajudar:

autoreconf --install

(Veja a página de manual, há uma --forceopção também)


programa cvs não encontrado; o autopoint falhou com o status de saída 1. Estou instalando cvs a partir de fontes, informando como ele funciona.
SirTasty

11
@SirTasty: cvs ?? hmm, talvez tente usar autoconfe automakediretamente?
Stéphane Gimenez

O Autoconf fornece os avisos de macro indefinidos. automake me fornece (ponto e vírgula linhas separadas) Makefile.am:2: WANT_DOC does not appear in AM_CONDITIONAL:; Makefile.am: required file ./ChangeLog not found ; configure.ac:57: necessário não config.h.in arquivo found`
SirTasty

Eu não sou um especialista em ferramentas automáticas (ou fã). Talvez espere que um apareça ... Por acaso, o que acontece aclocalprimeiro?
Stéphane Gimenez

Eu tive um erro semelhante ao autoconf (no redhat fc19) e o autoreconf --install o solucionou.
Gaoithe 25/05

24

As macros na mensagem de erro que você postou são definidas pelo automake e libtool ; parece que você precisa instalar esses pacotes.

Então tente autoreconf --install


Ambos os pacotes estão instalados, ou pelo menos "qual automake" e "qual libtool" retornam resultados razoáveis.
precisa saber é o seguinte

2
@SirTasty Então você provavelmente precisará executar o "autoreconf", como sugere Stéphane.
Riccardo Murri

6
No meu sistema CentOS6.7, eu tinha que fazer isso:sudo yum install autoconf automake libtool cmake autoconf-archive gcc-c++
Mark Hudson

11
Para mim, com o erro configure.ac:118: error: possibly undefined macro: AC_MSG_ERRORno Manjaro Linux, a instalação autoconf-archivefez o truque, embora tenha ocorrido outro erro que agora também foi evitado. Os outros pacotes foram instalados. Apenas para obter informações, mais detalhes sobre isso começam em github.com/NixOS/nix/pull/3154#issuecomment-545207139 .
James Ray

4

Para quem procura: Embora automake e libtool sejam candidatos muito prováveis, alguns sistemas não instalam o gettext automaticamente. Isso também é necessário.


1

Fiquei bastante confuso ao receber esses erros, porque tinha tudo instalado e o autoreconf --install não estava ajudando. O problema foi corrompido e excluído o aclocal.m4 antes que o autoreconf resolvesse o problema.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.