2014-01-13 93 views
1

我已经尝试过我能做的,在这个问题上找到StackOverflow上的答案。我不相信这个问题是与标签。下面是生成文件:Makefile:3:***缺少分隔符。停止


# $OpenBSD: Makefile,v 1.15 2010/02/09 08:55:31 markus Exp $ 

.include <bsd.own.mk> 

SUBDIR= lib ssh sshd ssh-add ssh-keygen ssh-agent scp sftp-server \ 
    ssh-keysign ssh-keyscan sftp ssh-pkcs11-helper 

distribution: 
    ${INSTALL} -C -o root -g wheel -m 0644 ${.CURDIR}/ssh_config \ 
     ${DESTDIR}/etc/ssh/ssh_config 
    ${INSTALL} -C -o root -g wheel -m 0644 ${.CURDIR}/sshd_config \ 
     ${DESTDIR}/etc/ssh/sshd_config 

.include <bsd.subdir.mk> 

我已尝试3号线(其中问题)之前把一个标签,并具有下列错误出现:

Makefile:3: *** commands commence before first target. Stop. 

这是不是我自己的设计的makefile - 它直接从这里下载: http://www.openssh.com/openbsd.html (第一下载链接)

此外,根据另一种回答这个问题,我使用下面的命令:

[email protected]:/usr/src/ssh# cat -e -t -v Makefile 

其输出如下:

\#^I$OpenBSD: Makefile,v 1.15 2010/02/09 08:55:31 markus Exp $$ $ .include <bsd.own.mk>$ $ SUBDIR=^Ilib ssh sshd ssh-add ssh-keygen 
ssh-agent scp sftp-server \$ ^Issh-keysign ssh-keyscan sftp 
ssh-pkcs11-helper$ $ distribution:$ ^I${INSTALL} -C -o root -g wheel 
-m 0644 ${.CURDIR}/ssh_config \$ ^I ${DESTDIR}/etc/ssh/ssh_config$ ^I${INSTALL} -C -o root -g wheel -m 0644 ${.CURDIR}/sshd_config \$ ^I 
${DESTDIR}/etc/ssh/sshd_config$ $ .include <bsd.subdir.mk>$ 

有谁知道可能是什么问题?提前致谢。

+1

你可以在最后重新发布'cat'的结果,并使用代码格式(每行缩进4个空格)而不是blockquotes('>'在每行前面)? blockquote版本全部被破坏。 –

+0

@JohnKugelman我继续并删除了'>'。如果你的问题出现的时候只有5行,那么应该有更多,输出实际上就是这样。 – jperezov

回答

7

这个makefile是为BSD make编写的。你正试图用GNU make来运行它。他们使用不同的格式。

特别是,.include命令在GNU make中无效。

+0

谢谢。这看起来是正确的。 user2931171的确提供了解决问题的办法,而不仅仅是一个解释。我不知道在这里选择答案的正确礼节 - 你确实回答了我的问题,但他提供了更恰当地解决我需求的信息。 – jperezov

1

既然你已经用“linux”标记了你的问题,我假设你使用的是Linux而不是OpenBSD。您希望用于Linux的ssh版本是便携版本,但您似乎下载了OpenBSD特有版本。尝试http://www.openssh.com/portable.html。有关OpenBSD /便携式拆分版本的详细信息,请参阅openssh首页。

+0

感谢您提供指向Linux兼容版本的链接。你是正确的,我下载了错误的文件。 – jperezov

相关问题