2015-04-25 7 views
2

Я пытаюсь построить мой проект, который я не пересматривал через некоторое время. Я использую GNU autotools в моде, типичном для приложения GNOME. Теперь, когда работает autogen.sh (который, в свою очередь, использует gnome-autogen.sh) Я получаю следующее сообщение об ошибке:Почему макросы gettext Automake включают устаревший макрос AM_PROG_MKDIR_P?

automake: warnings are treated as errors 
configure.ac:47: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, and its use is discouraged. 
configure.ac:47: You should use the Autoconf-provided 'AC_PROG_MKDIR_P' macro instead, 
configure.ac:47: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files. 
autoreconf: automake failed with exit status: 1 
[simon:~/git/toddlerfun] master(+2/-2) 1 ± 

Проблема, кажется, происходят из Gettext, выполнив команды из this bug report дает те же результаты:

$ grep -ri AM_PROG_MKDIR_P m4 
m4/intl.m4: AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake 
m4/po.m4: AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake 
$ head -n1 m4/po.m4 m4/intl.m4 
==> m4/po.m4 <== 
# po.m4 serial 17 (gettext-0.18) 

==> m4/intl.m4 <== 
# intl.m4 serial 17 (gettext-0.18) 

Однако, прочитав далее that bug report, это должно быть зафиксировано в gettext 0.18.2. И версия на моем Ubuntu 14.10 является 0,19:

$ gettext --version 
gettext (GNU gettext-runtime) 0.19.2 

Так почему не установлен правильно, ошибка фиксированного макроса?

ответ

4

Я решил это при написании вопроса. Вы должны убедиться, что правильная версия макроса включена из configure.ac. У меня было:

AM_GNU_GETTEXT_VERSION([0.18]) 

Обновление до:

AM_GNU_GETTEXT_VERSION([0.19]) 

Сделано вещи работа. Проводя этот ответ, чтобы другие, у кого могли быть подобные проблемы, могли получить помощь.