什么是 .in 文件?

str*_*gee 36 compiling make configure autoconf

有时在项目源中我会看到“*.in”文件。例如,一堆“Makefile.in”。它们是什么和/或“.in”部分是什么意思?我认为这与autoconfmake或类似的事情有关,但我不确定。

我试过搜索“.in 文件扩展名”、“autoconf .in 文件扩展名”、“autoconf .in”、“autoconf dot in”和其他变体,但没有成功。

Tre*_*key 35

我相信涉及Makefile.inautomake过程是这样的:

  Makefile.am
       |
      \'/
+--------------+
|   automake   |
+--------------+
       |
      \'/
   Makefile.in
       |
      \'/
+--------------+    +--------------+
| ./configure  |<-- |   autoconf   |<-- configure.in
+--------------+    +--------------+
       |
      \'/
    Makefile
Run Code Online (Sandbox Code Playgroud)

没有人真正写过 Makefile.in。这里唯一由程序员定义的文件是 Makefile.am。

  • 好吧,有时我会写一个 `Makefile.in`,因为 automake 不会做我想要的。 (3认同)

Jos*_*Gee 27

这只是一个约定,表示给定的文件是用于input;根据我的经验,这些文件往往是一种通用模板,从中可以生成特定的输出文件或脚本。

  • 出于兴趣,您能否举出一些示例,其中在 `autoconf` 领域之外以这种方式使用“.in”? (3认同)

nin*_*alj 7

它们是m4宏预处理器的输入文件。除其他外,这些文件包含由@ 标记的宏,并由 m4 扩展。