VMime Book 日本語訳 第2章
2020-07-01 K.OHWADA
原文
VMime Book: A Developer’s Guide To VMime
https://www.vmime.org/public/documentation/book/vmime-book.pdf
第2章 VMimeの構築とインストール
Building and Installing VMime
ページ内 目次
2.1 はじめに
2.2 必要なもの
2.3 ソースファイルの取得
2.4 コンパイルとインストール
2.5 ビルドのカスタマイズ
2.6 ビルドオプション
2.1はじめに
Introduction
システムでVMimeのビルド済みパッケージが利用できない場合、または何らかの理由で最初からコンパイルしたい場合は、このセクションでプロセスを説明します。
2.2 必要なもの
Whatyouneed
ソースからVMimeをビルドするには、次のものが必要です。
- 優れたSTL実装と優れたサポートを備えた動作中のC ++コンパイラ
テンプレート(たとえば、GNU GCC)
- CMakeビルドシステム
- ICUライブラリまたは使用可能なiconv()実装(GNUプロジェクトのlibiconvを参照)
- SASL1サポートが必要な場合はGNUSASLライブラリ
- SSLおよびTLS2のサポートが必要な場合は、OpenSSLライブラリまたは GNUTLSライブラリのいずれか
2.3 ソースファイルの取得
Obtainingsourcefile
VMimeライブラリの最新リリースのソースファイルを含むパッケージは、VMimeWebサイトからダウンロードできます。
現在の開発バージョンは、現在GitHubでホストされているGitリポジトリから入手することもできます。次の手順で匿名アクセスを介してチェックアウトできます。
git clone git://github.com/kisli/vmime
2.4 コンパイルとインストール
Compiling and installing
VMimeは構築のためにCMakeに依存しています。
CMakeは、オープンソースのクロスプラットフォームビルドシステムです。
プラットフォームでVMimeをコンパイルするために必要なすべてのビルドスクリプトを生成します。
まず、tarballを抽出するか、VMimeソースコードをシステム上のどこかのディレクトリにチェックアウトします。
これを/ path / to / vmime-sourceと呼びます。
次に、すべての中間ビルドファイルと最終ライブラリを含むビルドディレクトリを作成します。
これを/ path / to / vmime-buildと呼びます。
ビルドディレクトリから、プラットフォーム/ choiceに対応する-G引数を指定してcmakeを実行します。
たとえば、Unix互換プラットフォーム(GNU / LinuxやMacOSなど)を使用していて、ビルドにmakeユーティリティを使用する場合は、次のように入力します。
$ cd /path/to/vmime-build
$ cmake -G "Unix Makefiles" /path/to/vmime-source
CMakeは、システムでいくつかのテストを実行して、インストールされているライブラリとプラットフォーム固有のインクルードを確認し、プロジェクトのコンパイルに必要なすべてのファイルを作成します。
さらに、システムで検出されたパラメーターを含む src / vmime /config.hpp ファイルが作成されます。
次に、コンパイルプロセスを開始できます。
$ cmake--build
コンパイルが実行されるまで数分待ってください(今すぐコーヒーを飲む時間が必要です!)。
コンパイル中にエラーが発生した場合は、システムが章の冒頭に記載されている要件を満たしていることを確認してください。
また、新しいバージョン(Gitリポジトリなどから)を入手したり、VMimeユーザーフォーラムでヘルプを入手したりすることもできます。
すべてが正常にコンパイルされたら、ライブラリと開発ファイルをシステムにインストールできます。
# make install
注:
ライブラリをデフォルトの場所(つまり、/ usr / libおよび/ usr / include)にインストールすることを選択した場合は、スーパーユーザー権限(root)を使用してこれを行う必要があります。
これで完了です。
次の章にジャンプして、プログラムでVMimeを使用する方法を知ることができます。
2.5 ビルドのカスタマイズ
Customizingbuild
config.hppファイルを直接変更しないでください。
代わりに、cmakeを再度実行し、コマンドラインでビルドオプションを指定する必要があります。
たとえば、TLSサポートにGnuTLSの代わりにOpenSSLライブラリを強制的に使用するには、次のように入力します。
VMimeの一部の機能を有効または無効にする場合は、cmake-L と入力してヘルプを表示できます。
ただし、デフォルトは問題ありません。
ビルドオプションの完全なリストについては、10ページのセクション2.6を参照することもできます。
CMakeの使用の詳細については、CMakeのWebサイトにアクセスしてください。
注:
構成を変更した場合、またはシステムで何かが変更された場合は、CMakeCache.txtファイルを削除してください。
CMakeは処理を高速化するためにいくつかの値をキャッシュする場合があります。
システムにNinja3がある場合は、Ninja3などの別のビルドバックエンドを使用することもできます。
$ cd /path/to/vmime-build
$ cmake -G Ninja /path/to/vmime-source $ ninja
$ ninja install
デフォルトのディレクトリ(GNU / Linuxシステムでは/ usr)とは異なるディレクトリにVMimeをインストールするには、CMAKE INSTALLPREFIXオプションを設定します。
$ cmake -DCMAKE_INSTALL_PREFIX=/opt/ ...
2.6 ビルドオプション
Buildoptions
ビルドを制御するために、CMakeにいくつかのオプションを与えることができます。
表2.1: CMakeビルドオプション
CMake build options
オプション名 | 説明 | デフォルト |
---|---|---|
VMIME_BUILD_SHARED_LIBRARY | ライブラリの共有バージョン(.so)を構築するには、ONに設定します | ON |
VMIME_BUILD_STATIC_LIBRARY | ライブラリの静的バージョン(.a)をビルドするには、ONに設定します | ON |
VMIME_BUILD_TESTS | 単体テストをビルドするには、ONに設定します | デフォルトはOFFです |
VMIME_TLS_SUPPORT_LIB | 「openssl」または「gnutls」のいずれかに設定して、SSL / TLSサポートにOpenSSLまたはGNUTLSのいずれかを強制的に使用します | システムで使用可能なライブラリによって異なります |
VMIME_CHARSETCONV_LIB | 「iconv」、「icu」、または「win」(Windowsのみ)のいずれかに設定します | システムで使用可能なライブラリに依存します |
CMAKE BUILD_TYPE | ビルドタイプをRelease またはDebug のいずれかに設定します デバッグ(Debug)では、最適化が無効になり、デバッグ情報が有効になります |