web-dev-qa-db-ja.com

aclocalの実行中のconfigure.acファイルのエラー

私は https://robots.thoughtbot.com/the-magic-behind-configure-make-make-install に従ってautoconfおよびautomakeを使用してconfigureスクリプトとMakefileを作成します。

configure.acファイルの内容は次のとおりです。

AC_INIT ([helloworld], [0.1], [[email protected]])
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 $ 

AC_INIT ([helloworld], [0.1], [[email protected]])が間違っているかどうかを確認するためにGoogle検索を行いました。しかし、AC_INITを使用する正しい方法のようです。

どうすれば修正できますか?

また、以下はMakefile.amファイルの内容です(これがエラーに関連する場合):

AUTOMAKE_OPTIONS = foreign
bin_PROGRAMS = helloworld
helloworld_SOURCES = hello.c
1
sps

それは単なる空白の問題のようです: Autoconf Manual.1.2 The Autoconf Language によると:

引数を取るマクロを呼び出す場合、マクロ名と開き括弧の間に空白があってはなりません。

 AC_INIT ([oops], [1.0]) # incorrect
 AC_INIT([hello], [1.0]) # good

だからあなたは変える必要がある

AC_INIT ([helloworld], [0.1], [[email protected]])

AC_INIT([helloworld], [0.1], [[email protected]])
2
steeldriver