Visual Studio 2017(Express for Windows Desktop のオンラインインストーラー)で C/C++をスタティックライブラリとして作成して利用するためのメモ。
スタティックライブラリのプロジェクトでは、プリコンパイル済ヘッダーを使用しない設定をする。
[構成プロパティ]→[C/C++]→[プリコンパイル済ヘッダー]→[プリコンパイル済ヘッダー]で設定
プロジェクトのプロパティで指定するだけでなく、ソースファイル毎に指定しないといけないことに注意。
スタティックライブラリを利用する側のプロジェクトでは、ヘッダファイルとLIBファイルの設定をする。
[構成プロパティ]→[C/C++]→[全般]→[追加のインクルード ディレクトリ]でヘッダファイルのディレクトリを指定
[構成プロパティ]→[リンカー]→[全般]→[追加のライブラリ ディレクトリ]でLIBファイルのディレクトリを指定
※LIBファイルは、プロジェクトのDebug/Releaseフォルダではなく、ソリューションのDebug/Releaseフォルダに作成される。
[構成プロパティ]→[リンカー]→[入力]→[追加の依存ファイル]でLIBファイルを指定、コンパイルオプションとして反映されるが、ソースコード内に下記の記述をすることで代用できる。
#pragma comment(lib, "ライブラリ名")
スタティックライブラリを利用する側のプロジェクトでのLIBファイルの設定は、
プロジェクトの配下にある参照から[参照の追加]でプロジェクトにチェックを入れて依存関係を設定しても代用することが可能である。
なお、スタティックライブラリは、アプリケーションのビルドのときにリンクされてEXEファイルに組み込まれるので、LIBファイルを配布する必要はない。
スタティックライブラリのプロジェクトでは、プリコンパイル済ヘッダーを使用しない設定をする。
[構成プロパティ]→[C/C++]→[プリコンパイル済ヘッダー]→[プリコンパイル済ヘッダー]で設定
プロジェクトのプロパティで指定するだけでなく、ソースファイル毎に指定しないといけないことに注意。
スタティックライブラリを利用する側のプロジェクトでは、ヘッダファイルとLIBファイルの設定をする。
[構成プロパティ]→[C/C++]→[全般]→[追加のインクルード ディレクトリ]でヘッダファイルのディレクトリを指定
[構成プロパティ]→[リンカー]→[全般]→[追加のライブラリ ディレクトリ]でLIBファイルのディレクトリを指定
※LIBファイルは、プロジェクトのDebug/Releaseフォルダではなく、ソリューションのDebug/Releaseフォルダに作成される。
[構成プロパティ]→[リンカー]→[入力]→[追加の依存ファイル]でLIBファイルを指定、コンパイルオプションとして反映されるが、ソースコード内に下記の記述をすることで代用できる。
#pragma comment(lib, "ライブラリ名")
スタティックライブラリを利用する側のプロジェクトでのLIBファイルの設定は、
プロジェクトの配下にある参照から[参照の追加]でプロジェクトにチェックを入れて依存関係を設定しても代用することが可能である。
なお、スタティックライブラリは、アプリケーションのビルドのときにリンクされてEXEファイルに組み込まれるので、LIBファイルを配布する必要はない。