configure.ac: não usando gettext

12

Estou tentando compilar um aplicativo gnome e estou curioso sobre o que significa o resultado quando executo o script autogen.sh :

~/Documents/Code/window-picker-applet $./autogen.sh
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal 
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --install --copy
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
data/Makefile.am:11: '%'-style pattern rules are a GNU make extension
data/Makefile.am:11: wildcard $(top_srcdir: non-POSIX variable name
data/Makefile.am:11: (probably a GNU make extension)
autoreconf: Leaving directory '.'
[Output trunkated...]

Por que estou recebendo a informação configure.ac: not using Gettext ? Isso é um aviso e devo alterar alguns dos arquivos de configuração para corrigi-lo? Eu sei que o aplicativo tem uma pasta po/ , então acho que deveria estar usando o Gettext, por isso estou confuso sobre esse aviso.

Eu também tive muitos avisos com a macro N_ não sendo definida, então isso pode estar relacionado? [Atualizar] Veja o comentário abaixo [ / Atualizar]

    
por lanoxx 03.02.2012 / 15:29

2 respostas

1

Parece que o seu autogen.sh está chamando autoreconf .

O projeto pode estar usando intltool , mas em caso afirmativo, autoreconf deve pegá-lo e chamar intltoolize . Se estiver definitivamente usando o gettext do GNU, isso é útil na página autopoint info:

The ‘autopoint’ program copies standard gettext infrastructure files into a source package. It extracts from a macro call of the form ‘AM_GNU_GETTEXT_VERSION(VERSION)’, found in the package’s ‘configure.in’ or ‘configure.ac’ file, the gettext version used by the package, and copies the infrastructure files belonging to this version into the package.

E se escrevermos AM_GNU_GETTEXT_VERSION , então autopoint é invocado corretamente por autoreconf .

To extract the latest available infrastructure which satisfies a version requirement, then you can use the form ‘AM_GNU_GETTEXT_REQUIRE_VERSION(VERSION)’ instead. For example, if gettext 0.19.8 is installed on your system and ‘0.19.1’ is requested, then the infrastructure files of version 0.19.8 will be copied into a source package.

O problema só aparece quando se muda para esta versão da macro, e enquanto faz o que diz na lata não é conhecido por autoreconf e nós vemos uma patch para suporte .

Os usuários do Gentoo podem obter o mesmo comportamento em ebuilds usando usando nossa função eautoreconf

Escrever AM_GNU_GETTEXT_VERSION e AM_GNU_GETTEXT_REQUIRE_VERSION imediatamente depois no meu próprio configure.ac gera um aviso, mas parece produzir o resultado desejado.

    
por 16.07.2017 / 13:14
3

Qual sistema operacional?

Provavelmente, seu sistema não possui todo ou parte do sistema gettext, ou seja, as partes de desenvolvimento. Em muitas distribuições, por ex. Debian / Ubuntu, o gettext é separado em vários pacotes: gettext-base e gettext .

O pacote gettext-base é para executar programas multilíngues, enquanto gettext tem as partes necessárias para a criação.

    
por 21.04.2012 / 22:17