【问题标题】:Building OpenSSH on Cygwin在 Cygwin 上构建 OpenSSH
【发布时间】:2010-12-18 11:56:55
【问题描述】:

我正在尝试在 Cygwin 上构建 OpenSSH 5.1。我正在使用以下配置命令:

./configure --prefix=/usr --sysconfdir=/etc --libexecdir='${sbindir}' \
--localstatedir=/var --datadir='${prefix}/share' --mandir='${datadir}/man' \
--infodir='${datadir}/info'

configure 命令运行正常,但是当我尝试 make 时出现此错误:

gcc -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -Wformat-security -fno-builtin-memset  -I. -I.. -I. -
..  -DHAVE_CONFIG_H -c bsd-arc4random.c
In file included from ../openbsd-compat/openbsd-compat.h:45,
                 from ../includes.h:169,
                 from bsd-arc4random.c:17:
../openbsd-compat/getrrsetbyname.h:57:26: arpa/nameser.h: No such file or directory
../openbsd-compat/getrrsetbyname.h:59:20: resolv.h: No such file or directory

我有点卡住了。任何人都有任何想法。

【问题讨论】:

  • 您为什么要尝试自己构建 OpenSSH?它已经可用于 Cygwin。如果您只是进行了默认安装,它不会出现,因为它不是默认安装的,但您可以重新运行 setup.exe 并选择它。它属于网络类别。
  • 如果您只需要 OpenSSH 5.1,而不是当前的 5.2,则必须使用 Cygwin 1.7。如果您回滚到 Cygwin 1.5,您将获得 OpenSSH 5.1。顺便说一句,我刚刚使用您上面给出的命令构建了 OpenSSH 5.2,它构建没有问题。

标签: cygwin openssh


【解决方案1】:

这个版本的特殊问题是 Cygwin 系统没有安装 minires 包。您应该首先安装 minires(1.02 或 smth),它会在适当的位置(/usr/local/include 或 /usr/include)安装必要的 arpa/nameser*.h 和 resolv.h 文件。

【讨论】:

    【解决方案2】:

    Openssh 在 Cygwin 中可用。就用那个吧。

    【讨论】:

    • 谢谢,但我想更改源代码中的某些内容。无论如何,我放弃并找到了另一个解决方案,所以我真的应该删除这个问题。很抱歉给您带来麻烦。
    • 该死,我现在不记得了。我想我试图通过更改 OpenSSH 中的源代码以匹配另一台服务器的行为来模拟另一台 SSH 服务器中的错误。我想我只是后退了一步,没有尝试仿真就解决了问题。
    猜你喜欢
    • 2013-06-29
    • 1970-01-01
    • 2013-09-22
    • 2020-08-10
    • 2021-07-17
    • 1970-01-01
    • 2011-06-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多