コンパイルされた が与えられたlib
場合、それがコンパイルされた/md
かどうかを確認する方法はありますか? /mt
(おそらくdumpbin
ツールを使用して)
編集:
スイッチでコンパイルされなかっdumpbin /directives foo.lib
た場合の解決策です。そのような方法で最適化されたファイルを検査するオプションはありますか?lib
/GL
lib
コンパイルされた が与えられたlib
場合、それがコンパイルされた/md
かどうかを確認する方法はありますか? /mt
(おそらくdumpbin
ツールを使用して)
編集:
スイッチでコンパイルされなかっdumpbin /directives foo.lib
た場合の解決策です。そのような方法で最適化されたファイルを検査するオプションはありますか?lib
/GL
lib
Microsoft コンパイラの非常に優れた機能は、ソース ファイルを .obj ファイルにコンパイルするために使用されたコマンド ラインを保持することです。これにより、.lib ファイルを参照してそれを見つけることができます。それを待ちます、Notepad.exe。「cl.exe」を検索するだけです。
たとえば、VS2013 でビルドした Win32Project1.lib という名前のサンプル ライブラリで開いたメモ帳を使用すると、次のように表示されます。
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\CL.exe cmd -c -ZI -nologo -W3 -WX- -sdl -Od -Oy- -DWIN32 -D_DEBUG -D_LIB -DHELLO_STACKOVERFLOW -D_UNICODE -DUNICODE -Gm -EHs -EHc -RTC1 -MDd -GS -fp:正確 -Zc:wchar_t -Zc:forScope -Ycstdafx.h -Fp"c:\Users\hpass_000\documents\visual studio 2013\Projects\Win32Project1\ Debug\Win32Project1.pch" -Fo"c:\Users\hpass_000\documents\visual studio 2013\Projects\Win32Project1\Debug\" -Fd"c:\Users\hpass_000\documents\visual studio 2013\Projects\Win32Project1\Debug \vc120.pdb" -Gd -TP -analyze- -errorreport:prompt -I"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include" -I"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include" -I"C:\Program Files (x86)\Windows Kits\8.1\Include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\Include\shared" -I"C:\Program Files (x86)\Windows Kits\8.1\Include\winrt" -X src stdafx.cpp pdb c:\Users\hpass_000 \documents\visual studio 2013\Projects\Win32Project1\Debug\vc120.pdb
ご覧のとおり、 /MDd でコンパイルしました
.lib には、設定が異なる可能性のある複数の .obj ファイルを含めることができることに注意してください。「-mt」「-md」で検索するとすぐにわかります。