cmake“libcurl是在禁用SSL的情况下构建的,https:不支持!”

时间:2017-06-19 14:18:20

标签: curl cmake suse

我正在尝试编译项目parquet-cpp: https://github.com/apache/parquet-cpp

当我做的时候,这是我得到的错误:

[  1%] Performing download step (download, verify and extract) for 'arrow_ep'
-- downloading...
     src='https://github.com/apache/arrow/archive/a8f8ba0cbcf5f596f042e90b7a208e7a0c3925b7.tar.gz'
     dst='/home/D070470/workspace/parquet-cpp/arrow_ep-prefix/src/a8f8ba0cbcf5f596f042e90b7a208e7a0c3925b7.tar.gz'
     timeout='none'
CMake Error at arrow_ep-stamp/download-arrow_ep.cmake:22 (message):
  error: downloading
  'https://github.com/apache/arrow/archive/a8f8ba0cbcf5f596f042e90b7a208e7a0c3925b7.tar.gz'
  failed

    status_code: 1
    status_string: "unsupported protocol"
    log: libcurl was built with SSL disabled, https: not supported!

  unsupported protocol





CMakeFiles/arrow_ep.dir/build.make:86: recipe for target 'arrow_ep-prefix/src/arrow_ep-stamp/arrow_ep-download' failed
make[2]: *** [arrow_ep-prefix/src/arrow_ep-stamp/arrow_ep-download] Error 1
CMakeFiles/Makefile2:63: recipe for target 'CMakeFiles/arrow_ep.dir/all' failed
make[1]: *** [CMakeFiles/arrow_ep.dir/all] Error 2
Makefile:126: recipe for target 'all' failed
make: *** [all] Error 2

我正在运行SUSE Linux 12.1版,uname-r提供3.12.74-60.64.40-default

我尝试用zypper remove curl删除curl,但错误保持不变,这是令人惊讶的。

当我打印curl --version时,我得到了

curl 7.37.0 (x86_64-suse-linux-gnu) libcurl/7.37.0 OpenSSL/1.0.1i zlib/1.2.8 libidn/1.28 libssh2/1.4.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP

表明curl实际上具有SSL功能。

cmake仍然运行curl并且在curl甚至没有安装时出错的事实可能表明cmake使用自己的版本?

1 个答案:

答案 0 :(得分:9)

所以cmake确实使用了自己的curl版本。

我必须在这里下载cmake来源https://cmake.org/download/ 并使用./bootstrap --system-curlmakemake install来生成使用系统卷曲的cmake版本。我还需要安装包libcurl-devel