Gd
がブーストライブラリ名を意味することを確認しようとしましたが、同じものを探している他の2人だけが見つかりました。
これが明確に文書化されている場所である必要があると思います。それを見つけたいと思います。
mt
-マルチヘッド、bjam threading=multi
で取得s
-bjam runtime-link=static
g
-標準およびランタイムサポートライブラリのデバッグバージョンを使用します。 どのbjamスイッチ???d
-デバッグbjam variant=debug
上記のバリアントを制御するbjam
スイッチを制御するにはどうすればよいですか?実際、私が識別できなかったのはg
だけです。
Boost Getting Started Windows セクション6.3の命名と セクション6.1のUnix命名 を参照してください。
-mtとdを処理するものは
-mt Threading tag: indicates that the library was built with multithreading support enabled. Libraries built without multithreading support can be identified by the absence of `-mt`.
-d ABI tag: encodes details that affect the library's interoperability with other compiled code. For each such feature, a single letter is added to the tag as listed in this table:
Key Use this library when (Boost.Build option)
s linking statically to the C++ standard library
and compiler runtime support libraries.
(runtime-link=static)
g using debug versions of the standard and runtime support libraries.
(runtime-debugging=on)
y using a special debug build of Python.
(python-debugging=on)
d building a debug version of your code.
(variant=debug)
p using the STLPort standard library rather than
the default one supplied with your compiler.
(stdlib=stlport)
http://www.boost.org/doc/libs/1_35_0/more/getting_started/windows.html#library-naming のBoostドキュメントから、規約は次のとおりです。
-mtスレッドタグ:ライブラリがマルチスレッドサポートを有効にしてビルドされたことを示します。マルチスレッドのサポートなしでビルドされたライブラリは、-mtがないことで識別できます。
-dABIタグ:他のコンパイル済みコードとのライブラリの相互運用性に影響する詳細をエンコードします。そのような機能ごとに、1つの文字がタグに追加されます。
キー次の場合にこのライブラリを使用します。 s C++標準ライブラリおよびコンパイラランタイムサポートライブラリに静的にリンク。 g標準およびランタイムサポートライブラリのデバッグバージョンを使用。 yは、Pythonの特別なデバッグビルドを使用します。 dは、コードのデバッグバージョンをビルドします。 ] n STLPortの非推奨の「ネイティブiostream」機能を使用します。
たとえば、「ネイティブiostream」モードで静的ランタイムライブラリとSTLPort標準ライブラリのデバッグバージョンで使用するコードのデバッグバージョンをビルドする場合、タグは-sgdpnになります。上記のいずれにも該当しない場合、ABIタグは省略されます。
コマンドライン(feature = value)で指定する組み込み機能の基本セットは、BBv2のドキュメントで説明されています( builtin features を参照)。次回の1.43リリースでスタートガイドを既に更新したかどうかはわかりませんが、組み込みのオプションの説明をスタートガイドに追加してすばやくアクセスできるように、ドキュメントに大きな変更が加えられています。