我试图制作' BIND DNS服务器。
我使用命令RegDBKeyExist
,我收到错误:
make -f Makefile.in
。
我在AntiX Linux(基于Debian测试)和Ubuntu上都尝试过
我尝试了BIND的版本9.11.2,9.10.6和9.9.11
我使用键盘布局QWERTY US UTF8(但我没有编辑Makefile.in)。
在Makefile.in:32: *** missing separator (did you mean TAB instead of 8 Spaces?). Stop.
的第32行,有:
Makefile.in
我之前从未见过这样的台词(我是#' make')。
这可能是由空格字符替换的指令并导致问题吗?
我知道有几个这样的问题,这些问题都是关闭或关闭的主题,但是一些答案会受到赞赏,或者可能是你可以告诉我这个问题应该在哪里提出?
答案 0 :(得分:2)
您不能将Makefile.in
用作makefile。它不是一个makefile。它是makefile的模板,必须首先将其转换为真正的makefile,称为Makefile
(no .in
)。
您应该阅读源代码发布中的INSTALL
或README
文件,以了解如何构建它。我没有尝试构建BIND(在非常非常长的时间内)但很可能它附带了一个必须先运行的configure
脚本。该脚本将为您创建Makefile
。然后运行make
(没有任何-f ...
标志)。
答案 1 :(得分:1)
由MadScientist更正:
Makefile.in
是autoconf
和朋友使用的模板文件。具体来说,autoconf
需要configure.in
个文件来生成configure
脚本。然后,此脚本需要Makefile.in
并修改它以创建Makefile
。您找到的是此过程的标记。您可以找到更多信息here