サブディレクトリにいくつかのヘッダーファイルがあります。サブディレクトリには、includeディレクトリの同じ名前のサブディレクトリにコピーする必要があります。include_HEADERSにautotools nobaseとnodist接頭辞を一緒に使用する方法
nobase_include_HEADERS = hcrypto/aes.h \
hcrypto/bn.h \
hcrypto/cmac.h \
hcrypto/des.h \
hcrypto/dh.h \
hcrypto/dsa.h \
etc...
をしかしheimdalのは、これらのヘッダの前に構築されなければならないので、それらのヘッダファイルの一部は、(ビルドプロセス中に生成されています。私は(私はFYI、Heimdalのコードで働いている)ことを実現するためにnobase接頭辞を使用することができますファイルが存在するので)、distが死ぬことがないようにnodist接頭辞を使用する必要があります。
nobase_nodist_include_HEADERS = hcrypto/aes.h \
hcrypto/bn.h \
hcrypto/cmac.h \
hcrypto/des.h \
hcrypto/dh.h \
hcrypto/dsa.h \
etc...
私は警告やエラーに気付かなかったが、これらのヘッダファイルを取得しないでください:私はこれをしなかった、私は一緒にそれらの両方を使用することができると言いました、とさえ同様の例を提供
I found an article私のインクルードディレクトリにコピーされます。 私は何か間違っているのですか、またはautotoolsにバグがありますか?
興味深い、私は接頭辞を逆にすれば、私はこのエラーを取得:
Makefile.am:93: error: 'nodist_nobase_include_HEADERS' is used but 'nobase_includedir' is undefined
そのエラーの理由はautomake documentationにここで説明されています
‘nobase_’ should be specified first when used in conjunction with either ‘dist_’ or ‘nodist_’
私も(nodist_include_HEADERSを定義しましたそれは働いている)。 2つの定義が何らかの矛盾を引き起こしているのでしょうか?
nodist_include_HEADERSを削除して、すべてのヘッダをnobase_nodist_include_HEADERS行の下に置いてみましたが、今ではヘッダがインストールされていません。
Automakeは、システム情報: automakeの(GNUのautomakeは)1.13.4のopenSUSE 13.2(x86_64版)
いくつかのコメントを悪用するのではなく、質問自体に追加情報を追加してください。 –
あなたのケースでは、Makefile.amの小さなコレクションである、完全な動作例を作りましょう。http://stackoverflow.com/help/mcve –