MDビルドライブラリのデバッグバージョン(PocoFoundation mdd .libなど)を使用しているVS2012プロジェクトがあります。 #POCO_STATICが定義されており、すべてが良好です。 リリースモードでコンパイルする場合POCO:Releaseでプロジェクトをコンパイルするとき、リンカがMDライブラリの代わりにMTを要求する
、私は同じライブラリ(PocoFoundation MDの.lib)のリリースバージョンを使用しています - しかし、VS2012は、(突然にリンクすることを拒否し、代わりにMTバージョンを要求しますPocoFoundationmt.lib)POCO/VSは、MTのバージョンの代わりに、リリースモードでのMDのバージョンを探すために引き起こしている何
error LNK1104: cannot open file 'PocoFoundationmt.lib'
?何か案は?
ここでVS2012は、DEBUGモード(作品)
/OUT:"C:\xxx...\xxx.dll" /MANIFEST /NXCOMPAT /PDB:"C:\xxx...\xxx.pdb" /DYNAMICBASE "ssleay32.lib" "libeay32.lib" "cpprest120d_2_8.lib" "log4cppD.lib" "winhttp.lib" "Crypt32.lib" "Bcrypt.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /IMPLIB:"C:\xxx...\xxx.lib" /DEBUG /DLL /MACHINE:X86 /INCREMENTAL /PGD:"C:\xxx...\xxx.pgd" /SUBSYSTEM:WINDOWS /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Debug\xxx.dll.intermediate.manifest" /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"..\libs\Poco\Debug" /TLBID:1
に使用しています...と、ここで、リンカのコマンドは(動作しない)RELEASEモード
/OUT:"C:\xxx...\xxx.dll" /MANIFEST /LTCG /NXCOMPAT /PDB:"C:\xxx...\xxx.pdb" /DYNAMICBASE "ssleay32.lib" "libeay32.lib" "cpprest120_2_8.lib" "log4cppLIB.lib" "winhttp.lib" "Crypt32.lib" "Bcrypt.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /IMPLIB:"C:\xxx...\xxx.lib" /DEBUG /DLL /MACHINE:X86 /OPT:REF /SAFESEH /INCREMENTAL:NO /PGD:"C:\xxx...\xxx.pgd" /SUBSYSTEM:WINDOWS /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Release\xxx.dll.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"..\libs\Poco\Release" /TLBID:1
のためだとリンカのコマンドがあります
https://github.com/pocoproject/poco/blob/develop/Foundation/include/Poco/Foundation。h#L77 –
@HansPassantこのURLは本当に問題を解決するのに役立ちます。私たちはそれを答えにするべきですか? –