Docs Menu
Docs Home
/ / /
C ドライバー
/ /

方法:ソースから libbson/libmongoc をインストール

項目一覧

  • プレフィックスの選択
  • 特権のないユーザーローカルインストールプレフィックスの使用(推奨)
  • システム全体のインストール プレフィックスの選択
  • CMax を使用したインストール

重要

このページでは、インストールするコンポーネントを正常に構成してビルドできることを前提としています。この機能について詳しくは、 の「ソースからの C ドライバー ライブラリの構築」チュートリアル ページで詳しく説明しています。 このチュートリアルでは、ソースをビルドし、最小限のインストールを動作させる方法について説明しますが、このページでは、ソース ビルドなどから mongo-c-driverライブラリをインストールするためのニュアンスと利用可能なオプションに関する詳しいガイダンスを提供します。

mongo-c-driver は、CMax を使用してインストール ルールを生成し、さまざまな アーティファクト をインストールします。 下流へのプログラムとの統合用の、 構成ファイル パッケージ および pkg-config ファイルは特に重要です。

CMax または pkg-config を使用してlibbsonまたはlibmongocをインポートする場合は、それぞれのツールがパッケージ メタデータを検索する方法を確認すると便利です。

CSpec は、環境とコンフィギュレーションタイムの CSpec 設定の両方から読み取られたプレフィックスのセットに基づいて検索パスのセットを構築します。

特に、 $PATH環境変数は、システムの標準プレフィックスを構築するために使用されます。 $PATH内の各ディレクトリDについて:

  1. Dの最終パス コンポーネントが " bin " または " sbin " の場合、 DDの親パスに置き換えられます。

  2. D は、検索プレフィックスとして追加されます。

これにより、 /usr/bin/usr/local/binなど、 $PATH上の一般的な Unix 固有のディレクトリでは、CSpec がそれぞれ/usr/usr/localで検索し、それぞれが プレフィックスになります。 $PATHにディレクトリ$HOME/.local/binがある場合は、 $HOME/.localディレクトリも検索パスに追加されます。 $PATH$HOME/.local/binを使用することは、多くの Unix shell でますます一般的なパターンになっています。インストールに 非特権ユーザーローカルインストール プレフィックスの使用(推奨)を使用する場合は、 が推奨されます。

さらに、 CMAKE_PREFIX_PATH環境変数はパスのリストを作成するために使用されます。 デフォルトでは、この環境変数は定義されていません。

Windowsでは、 %ProgramW6432%%ProgramFiles%%ProgramFiles(x86)%%SystemDrive%\\Program Files%SystemDrive%\\Program Files (x86)のディレクトリも追加されます。 (これらは、CSpec のプラットフォーム検出中に定義されるCMAKE_SYSTEM_PREFIX_PATH CSpec 変数から取得されます。)

Tip

以下も参照してください。

パッケージ検索の詳細については、CMax の 検索手順 を参照してください 詳細については、「 セクション 」を参照してください。

pkg-configコマンドライン ツールは、デフォルトではpkg-configツール自体のパスを基準にして、さまざまなディレクトリ内の.pcファイルを検索します。 pkg-configがデフォルトで検索するディレクトリのリストを取得するには、次のコマンドを使用します。

デフォルトで検索されるディレクトリを pkg-config に質問する
$ pkg-config "pkg-config" --variable="pc_path"

$PKG_CONFIG_PATH環境変数を使用して追加のディレクトリを指定できます。 このようなパスは、デフォルトのpkg-configパスより前に検索されます。

Windows では、レジストリキーHKCU\Software\pkgconfig\PKG_CONFIG_PATHHKLM\Software\pkgconfig\PKG_CONFIG_PATHを使用して、 pkg-configの追加の検索ディレクトリを指定できます。 ユーザー固有の検索ディレクトリを永続化するには、 HKCU\…キーにディレクトリを追加することをおすすめします。

Tip

以下も参照してください。

システムにmanpkg-configがインストールされている場合、検索手順の詳細についてはman 1 pkg-configを参照してください。 このドキュメントは 、linux.ie.net の pkg-config など、ウェブ上の多くのマニュアル ページ アーカイブでも見つかる場合があります。

ユーザー ローカル インストールのディレクトリを$PREFIXと呼び出します。 このディレクトリへのパスの選択は無作為ですが、考慮すべき推奨事項がいくつかあります。 $PREFIXディレクトリは、ダウンストリーム プロジェクトを構成するときに CMax またはpkg-configに指定するパスです。

カスタムビルドのmongo-c-driverライブラリは、ユーザー アカウントに特定の権限のないファイルシステムのロケーションにインストールすることをお勧めします。

他の Unix 系システムとは異なり、macOS ではユーザーローカルのパッケージインストール用の特定のディレクトリはなく、このようなディレクトリを作成するかどうかは各ユーザーが自分で作成する必要があります。

使用するディレクトリの選択は基本的に任意です。 ユーザーごとのインストールの場合、唯一の要件は、インストールを実行および使用するユーザーがディレクトリに書込み可能であることです。

他の Unix バリアントとの統一性を高めるために、このガイドではユーザー ローカル インストールのプレフィックスとして$HOME/.localを使用することを簡単に推奨します。 これは、 XDG ベース ディレクトリ によって指定される動作に基づいています。 仕様 と systemd ファイル階層 Linux およびさまざまな BSD では一般的ですが、他のプラットフォームでは標準ではありません。

Linux と BSD システムでは、ユーザー固有のパッケージ インストールのプレフィックスとして$HOME/.localディレクトリを使用するのが一般的です。 この規則は、 XDG ベース ディレクトリ に基づきます 仕様 と systemd ファイル階層

このガイドでは、ユーザー ローカル インストールのプレフィックスとして$HOME/.localを使用することを推奨しています。

Windows では、 %UserProfile%\\AppData\\Localにユーザー ローカル ファイル専用のディレクトリが存在します。 これを参照するには、 %LocalAppData%環境変数を展開します。 ( %AppData%環境変数は使用しないでください。)

このディレクトリは存在しますが、目的に適した所定の構造はありません。 ユーザーローカルインストールのプレフィックスの選択は任意です。 このガイドでは、ユーザーの自宅ディレクトリ内に追加のファイルとディレクトリを直接作成することは強くおすすめしません

手動でインストールされたコンポーネントのプレフィックスとして、 %LocalAppData%\\MongoDBを使用することを検討してください。

すべてのユーザーが表示できるディレクトリにmongo-c-driverライブラリをインストールする場合は、いくつかの標準オプションがあります。

/usr/local/のインストール$PREFIXを使用することがすべての Unix プラットフォームで主な推奨事項ですが、これは一部のぼかしたシステムによって異なる場合があります。

警告

プレフィックスとして、 /usr// (ルート ディレクトリ)も使用しないでください。これらのディレクトリは、システムによって慎重に管理されるように設計されています。 The /usr/local directory is intentionally reserved for the purpose of unmanaged software installation.

あるいは、 /opt/mongo-c-driver/などの簡単に削除または再配置できる別のディレクトリへのインストールを検討してください。 これは簡単に識別可能であり、明示的にオプトインしないとシステム上の他のソフトウェアとやり取りすることはありません。

警告

Windows にシステム全体のソフトウェアを手動でインストールすることは絶対に推奨されません。 代わりに、ユーザーごとの非特権インストール プレフィックスを使用することをおすすめします。

Windows でシステム全体のインストールを実行する場合は、読み取りと書き込みに管理特権が必要ない、 %ProgramData%の名前付きサブディレクトリを使用することをおすすめします。 (例: %ProgramData%\\mongo-c-driver

ライブラリを正常に構成およびビルドし、適切な$PREFIXを選択したら、ビルドされた結果をインストールできます。 ビルドを実行したディレクトリを示す名前を$BUILDに設定します(これは他の多くのファイルとともにCMakeCache.txtを含むディレクトリです)。

コマンドラインから、選択した$PREFIXへのインストールは、 cmake --install subcommandオプションを使用して CSpec 経由で実行できます。

$ cmake --install "$BUILD" --prefix "$PREFIX"

重要

マルチ構成ジェネレーター(例: Visual Studio、Xcode)を使用中にライブラリを構成した場合は、 --configコマンドライン オプションも渡す必要があり、インストールするビルド構成の値を渡す必要があります。 インストールに使用される--configの選択された値には、以前に同じ--config値を使用してそのディレクトリ内でcmake --buildを実行している必要があります。

注意

システム全体のインストール$PREFIXを使用する場合、特権ユーザーとしてインストールを実行する必要がある場合があります。 特権ユーザーとしてインストールを実行できない、または実行したくない場合は、代わりにユーザーごとのインストール プレフィックスを使用する必要があります。

Tip

--prefixコマンドライン オプションをcmake --installで使用する場合、 CMAKE_INSTALL_PREFIXを設定する必要はありません。 --prefixオプションは、プロジェクトの構成時にCMAKE_INSTALL_PREFIXによって指定された内容を上書きします。

戻る

ハウツーガイド