読者です 読者をやめる 読者になる 読者になる

clock-up-blog

go-mi-tech

cmake 絡みで「Protocol "https" not supported or disabled in libcurl」エラーが出るときの対処

CentOS cmake

参考までに CentOS 7.2 にて。

たとえば solidity をビルドしようとするときに出てきたりするエラーだったりするのですが、これは cmake が内部的に参照している libcurl が SSL に対応していないために出るエラーです。

エラー例

solidity ビルド時のエラー

# cd solidity
# mkdir build
# cd build
# cmake ..
# make
....
-- Retry after 60 seconds (attempt #5) ...
-- Using src='https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz'
CMake Error at jsoncpp-project-stamp/download-jsoncpp-project.cmake:157 (message):
  Each download failed!

    error: downloading 'https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz' failed
         status_code: 1
         status_string: "Unsupported protocol"
         log:
         --- LOG BEGIN ---
         Protocol "https" not supported or disabled in libcurl

対処

以下のように cmake をビルドしなおす。

# yum -y install zlib-devel libcurl-devel
# wget https://cmake.org/files/v3.7/cmake-3.7.0.tar.gz
# tar xzvf cmake-3.7.0.tar.gz
# cd cmake-3.7.0
# ./configure --system-curl
# make
# make install

これで該当エラーは発生しなくなる。

});