Ошибка в файле configure.ac при запуске aclocal
Я следую за https://robots.thoughtbot.com/the-magic-behind-configure-make-make-install чтобы узнать, как использовать autoconf
а также automake
создать configure
сценарий и Makefile
,
Ниже приводится содержание configure.ac
файл:
AC_INIT ([helloworld], [0.1], [someone@nowhere.com])
AM_INIT_AUTOMAKE
AC_PROG_CC
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
Тем не менее, когда я бегу aclocal
Команда, я получаю следующую ошибку.
user $ aclocal
configure.ac:2: error: AC_INIT should be called with package and version arguments
/usr/share/aclocal-1.14/init.m4:29: AM_INIT_AUTOMAKE is expanded from...
configure.ac:2: the top level
autom4te: /usr/bin/m4 failed with exit status: 1
aclocal: error: echo failed with exit status: 1
user $
Я сделал поиск в Google, чтобы увидеть, если строка AC_INIT ([helloworld], [0.1], [someone@nowhere.com])
было неверно. Но похоже, что это правильный способ использования AC_INIT
,
Как это исправить?
Кроме того, ниже содержание Makefile.am
файл (если это связано с ошибкой):
AUTOMAKE_OPTIONS = foreign
bin_PROGRAMS = helloworld
helloworld_SOURCES = hello.c
1 ответ
Похоже, что это просто вопрос пробела: в соответствии с 3.1.2 Язык Autoconf из Руководства Autoconf:
При вызове макросов, которые принимают аргументы, между именем макроса и открывающей скобкой не должно быть пробелов.
AC_INIT ([oops], [1.0]) # incorrect AC_INIT([hello], [1.0]) # good
Так что вам нужно изменить
AC_INIT ([helloworld], [0.1], [someone@nowhere.com])
в
AC_INIT([helloworld], [0.1], [someone@nowhere.com])