web-dev-qa-db-ja.com

自動作成エラー:AM_INIT_AUTOMAKEの適切な呼び出しが見つかりませんでした

私はautotoolsを初めて使用し、これに従います tutorial 。しかし、私はこのエラーを解決できませんでした、

   $ automake
   configure.ac: error: no proper invocation of AM_INIT_AUTOMAKE was found.
   ..
   Makefile.am: error: required file './depcomp' not found
   ..
   /usr/share/automake-1.12/am/depend2.am: error: am__fastdepCC does not appear in AM_CONDITIONAL
  ..
  /usr/share/automake-1.12/am/depend2.am: error: AMDEP does not appear in AM_CONDITIONAL
  ..

僕の configure.acファイルは

   # -*- Autoconf -*-
   # Process this file with autoconf to produce a configure script.

   AC_PREREQ([2.69])
   AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])
   AM_INIT_AUTOMAKE(hello,1.0)
   AC_CONFIG_SRCDIR([config.h.in])
   AM_CONFIG_HEADERS(config.h)

   # Checks for programs.
   AC_PROG_CC

   # Checks for libraries.

   # Checks for header files.
   AC_CHECK_HEADERS([sys/time.h])

   # Checks for typedefs, structures, and compiler characteristics.

   # Checks for library functions.
   AC_CHECK_FUNCS([gettimeofday])

   AC_CONFIG_FILES([Makefile])
   AC_OUTPUT

私はインターネットで解決策をチェックしました、私のconfigure.ac見た目は問題ない、何が問題なのかわからない。

13
arslan

あなたはそれを一行ずつ修正しなければなりません。

まず、Makefile.amにはdepcompが必要です。したがって、それをフォルダにコピーする必要があります(この手順では、automake --add-missingを実行して、不足しているファイルを自動的に追加できます)。

cp -a /usr/share/automake-X.XX/depcomp .

次に、aclocalの前にautomakeを実行する必要があります。

$ aclocal

最後に、automakeを実行できます。

$ automake
$ autoconf
8
Narongsak Mala

configure.acをどこからコピーして貼り付けましたか?そのサイトが何であれ、ブックマークから削除する必要があります。

パッケージのバージョンを示す新しいAC_INITの方法と、同じことを行う古いAM_INIT_AUTOMAKEの方法を組み合わせています。両方をしないでください。 (Oldおよびnewは、10年前に発生したスイッチを指します。 )Automake 1.13以降、2つの引数を使用してAM_INIT_AUTOMAKEを呼び出す古い方法はサポートされなくなりました。

あなたの場合、AM_INIT_AUTOMAKE引数を削除し、プロジェクトの名前とバージョンを反映するようにAC_INIT引数を正しく設定するだけで十分です。

非常に単純なconfigure.acの最新の例については、 自動作成マニュアル を参照してください。

自分でautomakeを呼び出す代わりに、autoreconf -vfiを使用して、関連するすべてのツールを正しい順序で実行し、不足しているファイルをインストールします。

25
adl

私の場合、libtoolを2.2.6から2.4.6に更新します。 ps:私はautomakeの1.15バージョンを使用しています。 aclocalとautoheaderを実行する前にlibtoolizeを実行してください。

1
user3113626