web-dev-qa-db-ja.com

拡張子が「h.in」のファイルとはどういう意味ですか?

私はC言語を勉強していて、今まで見たことのない新しい拡張機能を見ました。

library.h.inのような拡張子を持つファイルはどういう意味ですか?

拡張子が「.h」の単純なヘッダーですか?違いは何ですか?

37

これらのファイルは通常、最終的な.hファイルを生成する autoconf の入力です。

PCREの例を次に示します。

#define PCRE_MAJOR          @PCRE_MAJOR@
#define PCRE_MINOR          @PCRE_MINOR@
#define PCRE_PRERELEASE     @PCRE_PRERELEASE@
#define PCRE_DATE           @PCRE_DATE@

Autoconfはすべての変数(@…@)にそれぞれの値を指定すると、結果は.hファイルになります。

34

通常、.h.inファイルは、ターゲットプラットフォームに存在する機能のいくつかのテストの結果に基づいて、configureスクリプトによって実際のヘッダーになるように入力されるヘッダーテンプレートです。

16
Daniel Fischer

.inで終わるファイルは通常、configureと呼ばれるプログラムによって使用されるテンプレートファイルで、変数の展開の代わりに拡張子なしで新しいファイルを生成します。つまり、ファイルが呼び出されたソースツリーを表示している場合、 Makefile.in、次に./configureは、ソースから「作成」するために使用できる使用可能なMakefileを生成します。

2
syb0rg