【问题标题】:How to install wget in macOS? [closed]如何在 macOS 中安装 wget? [关闭]
【发布时间】:2015-11-24 06:33:55
【问题描述】:

我尝试在 MAC OS 10.11.1 中安装 wget,但是当我运行 ./configure --with-ssl=openssl 时出现此错误:

configure: error: --with-ssl=openssl was given, but SSL is not available.

如何在 OSX 10.11.1 中解决这个问题?

【问题讨论】:

标签: macos wget osx-elcapitan libssl libressl


【解决方案1】:

使用 brew

先安装brew:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

然后用brew安装wget:

brew install wget

使用 MacPorts

首先,下载并运行MacPorts installer (.pkg)

然后安装wget:

sudo port install wget

【讨论】:

  • 我只需要运行brew install wget --with-libressl 就可以完美运行。谢谢
  • 安装时遇到这个问题? Warning: wget: this formula has no --with-libressl option so it will be ignored!
  • 或者干脆使用:brew install wget。 Homebrew 将安装任何必要的依赖项
  • 老实说,这是最轻松的答案。使用冲泡!我们信任酿造!
  • 错误:无效选项:--with-libressl
【解决方案2】:

我将 mac 更新为 Sierra , 10.12.3

我的 wget 停止工作。

当我尝试通过键入

进行安装时
brew install wget --with-libressl

我收到以下警告

警告:wget-1.19.1 已经安装,只是没有链接。

然后尝试通过键入

来卸载
brew uninstall wget --with-libressl

然后我通过输入重新安装

brew install wget --with-libressl

我终于成功了。感谢上帝!

【讨论】:

    【解决方案3】:

    对于 macOS Sierra,使用 Xcode 8.2 从源代码构建 wget 1.18。

    1. 安装 Xcode

    2. 构建 OpenSSL

      由于 Xcode 不附带 OpenSSL 库,因此您需要自己构建。我发现了这个:https://github.com/sqlcipher/openssl-xcode,按照说明构建 OpenSSL 库。然后,准备您的 OpenSSL 目录,其中包含“include”和“lib/libcrypto.a”、“lib/libssl.a”。

      假设它是:“/Users/xxx/openssl-xcode/openssl”,那么 OpenSSL 包含应该有“/Users/xxx/openssl-xcode/openssl/include”和“/Users/xxx/openssl” -xcode/openssl/lib” 用于“libcrypto.a”和“libssl.a”。

    3. 构建 wget

      进入wget目录,配置:

      ./configure --with-ssl=openssl --with-libssl-prefix=/Users/xxx/openssl-xcode/openssl
      

      wget应该配置并找到OpenSSL,然后make:

      make
      

      wget出来了。安装 wget:

      make install
      

      或者只是将 wget 复制到您想要的位置。

    4. 配置证书

      您可能会发现 wget 无法验证任何 https 连接,因为您构建的 OpenSSL 没有 CA 证书。你需要运行:

      新方式

      如果您的机器没有“/usr/local/ssl/”目录,请先创建它。

      ln -s /etc/ssl/cert.pem /usr/local/ssl/cert.pem
      

      老办法

      security find-certificate -a -p /Library/Keychains/System.keychain > cert.pem
      security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain >> cert.pem
      

      然后把 cert.pem 放到:"/usr/local/ssl/cert.pem"

      DONE:现在应该没问题了。

    【讨论】:

    • 我的意思是...这行得通,但它比只使用自制软件要困难得多
    • @StormeHawke 对于不想使用自制软件的人来说
    【解决方案4】:
    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    

    然后使用 brew 安装 wget 并启用 openressl 以获得 TLS 支持

    brew install wget --with-libressl
    

    它非常适合我。

    【讨论】:

    • 这与接受的答案完全相同,并且更旧,但获得了 -1 的投票,而接受的答案获得了 122 的投票。为什么?
    • @giles123 此答案于 2017 年 6 月 15 日提交,而接受的答案于 2015 年 11 月 24 日提交。我猜这个答案被否决了,因为它是公认答案的无耻副本
    • 糟糕,抱歉,我将“Jun 15”读作“June 2015”!不知道我以为这一天去哪里了。 :">
    【解决方案5】:

    你需要做的

    ./configure --with-ssl=openssl --with-libssl-prefix=/usr/local/ssl

    不是这个

    ./configure --with-ssl=openssl

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-27
      • 2020-07-16
      • 2017-08-30
      • 2017-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-19
      相关资源
      最近更新 更多