「C++の応用 - HTTP」の版間の差分

ナビゲーションに移動 検索に移動
6行目: 6行目:
==== cURLライブラリとは ====
==== cURLライブラリとは ====
その他の様々な通信方法を知りたい場合は、[https://curl.se/libcurl/c/example.html cURLの公式Webサイト]からサンプルコードを閲覧することができる。<br>
その他の様々な通信方法を知りたい場合は、[https://curl.se/libcurl/c/example.html cURLの公式Webサイト]からサンプルコードを閲覧することができる。<br>
<br>
==== cURLライブラリのインストール ====
===== パッケージ管理システムからインストール =====
# RHEL
sudo dnf install curl
# SUSE
sudo zypper install curl
<br>
===== ソースコードからインストール =====
もし、別途インストールする必要がある場合、ソースコードからcurlをインストールする。<br>
<br>
curlのビルドに必要なライブラリをインストールする。<br>
# SUSE
sudo zypper install make cmake gcc perl libopenssl-devel libopenssl-1_1-devel libzstd-devel c-ares-devel libpsl-devel \
                    libssh-devel      # オプション : libSSHライブラリを使用する場合
                    libssh2-devel    # オプション : libSSH2ライブラリを使用する場合
                    libgnutls-devel  # オプション : GNU TLSライブラリを使用する場合
                    mbedtls-devel    # オプション : Mbed TLSライブラリを使用する場合
                    libnghttp2-devel  # オプション : NGHTTPライブラリを使用する場合
                    libheimdal-devel  # オプション : GSSを使用する場合
<br>
[https://curl.se/download.html curlの公式Webサイト]、または、[https://github.com/curl/curl curlのGithub]にアクセスして、ソースコードをダウンロードする。<br>
ダウンロードしたファイルを解凍する。<br>
tar xf curl-<バージョン>.tar.xz
cd curl-<バージョン>
<br>
curlをビルドおよびインストールする。<br>
mkdir build && cd build
# Configureスクリプトを使用する場合
../configure --prefix=<curlのインストールディレクトリ> \
              --with-openssl \
              --with-gnutls    # オプション : GNUTLSを使用する場合
              --with-wolfssl  # オプション : WolfSSLを使用する場合
# CMakeを使用する場合
cmake .. -DCMAKE_BUILD_TYPE=Release                      \
          -DCMAKE_INSTALL_PREFIX=<CURLのインストールディレクトリ> \
          -DENABLE_ARES=ON      \  # C Aresを有効にする場合
          -DCURL_USE_GNUTLS=ON  \  # GNU TLSを有効にする場合
          -DCURL_USE_MBEDTLS=ON  \  # Mbed TLSを有効にする場合
          -DCURL_USE_WOLFSSL=ON  \  # Wolf SSLを有効にする場合
          -DUSE_NGHTTP2=ON      \  # NG Httpを有効にする場合
          -DCURL_USE_GSSAPI=ON      # GSS APIを有効にする場合
make -j $(nproc)
make install
<br>
<br>
==== HTTPヘッダの取得例 ====
==== HTTPヘッダの取得例 ====

案内メニュー