LoginSignup
0
2

More than 5 years have passed since last update.

MongoDBのC言語ドライバのビルド方法

Last updated at Posted at 2018-09-18

概要

MongoDBのC言語ドライバのビルド方法です。
日本語の情報が少なかったのでまとめておきます。

前提条件

  • Visual Studio 2010 以降がインストールされている環境 (または Visual Studio 2015 Express)

ビルド方法

MongoDBのC言語ドライバはバイナリが配布されていないためソースからのビルドが必要となります。

1. CMakeのインストール

CMake へアクセスしてdownloadのページから Windows win64-x64 Installer をダウンロードします。
ダウンロード後、msiパッケージを実行してインストールします。

2. mongo-c-driverのダウンロード

mongo-c-driver へアクセスしてソースをダウンロードします。

3. CMake によるビルド

コマンドプロンプトを起動後、ソースのルートディレクトリへ移動して以下のコマンドを実行します。

set PATH="C:\Program Files\CMake\bin";%PATH%
mkdir cmake-build
cd cmake-build
cmake -G "Visual Studio 14 2015 Win64" "-DCMAKE_INSTALL_PREFIX=C:\mongo-c-driver" "-DCMAKE_PREFIX_PATH=C:\mongo-c-driver" ..

4. MSBuild によるビルド

引き続き以下のコマンドを実行します。

set PATH="C:\Program Files (x86)\MSBuild\14.0\Bin";%PATH%
msbuild.exe /p:Configuration=Release ALL_BUILD.vcxproj
msbuild.exe /p:Configuration=Release INSTALL.vcxproj

警告が大量に表示されますが、ビルドに成功すると C:\mongo-c-driver に以下のバイナリが生成されます。

  • DLLファイル
  • インクルードヘッダファイル
  • ライブラリファイル

ビルド構成について

上記の手順ではリリース構成でビルドを行っていますが、 /p:Configuration= で指定する値を以下の値に変更することで異なるビルド構成でビルドすることも可能です。

説明
Debug デバッグ構成でビルド
Release リリース構成でビルド
MinSizeRel 最小サイズ構成でビルド
RelWithDebInfo デバッグ情報付きリリース構成でビルド

/p:Configuration= を指定せずにビルドした場合、デバッグ構成としてビルドされます。実行環境に ucrtbased.dll 1 が存在していないとリンクしたプログラムの実行時に以下のエラーが表示されるため注意が必要です。

error.png


  1. Cランタイムライブラリ のデバッグ版です。VisualStudioの再頒布パッケージではインストールされません。 

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2