Windowsでlibmonoを静的ライブラリとしてコンパイルしたい。
ターゲットプラットフォームはWindowsx86です。ビルド環境:Windows 7 64ビット、VC ++ Express 2010
私がすでにしたこと。
1)モノラル2.10.8ソースをダウンロードしました。
2)msvcフォルダーからmono.slnを開き、すべてがコンパイルされていることを確認しました。
3)次に、いくつかの変更を加えました
。3.1)一般->プロジェクトのデフォルト->構成タイプ:静的ライブラリ(.lib)
3.2)一般->プロジェクトのデフォルト-> MFCの使用:標準のWindowsライブラリを使用
3.3)C / C ++ ->コード生成->ランタイムライブラリ:マルチスレッド(/ MT)
4)ビルドしてVC ++ 2010でmono-2.0.libを正常に作成
5)自分のプロジェクトのリンカー入力に追加(monoを埋め込みたい)使用:
5.1)一般->プロジェクトのデフォルト->構成タイプ:アプリケーション(.exe)
5.2)一般->プロジェクトのデフォルト-> MFCの使用:静的ライブラリでMFCを使用
5.3)C /C++->コード生成->ランタイムとしょうかん:
ほぼ完璧に機能しているようですが、いくつかのひどい問題があります。Dictionary<TKey、TSource>の不思議な振る舞い
すべてが正しく行われていますか?他のコンパイラオプションまたはプリプロセッサディレクティブを指定する必要がありますか?
PS: libmonoコマンドラインは次のとおりです。
/ I ".. \ libgc \ include" / I ".. \" / I ".. \ mono \" / I ".. \ mono \ jit" / I ".. \ mono \ eglib \ src" / I ".... \ mono \ eglib \ src" / I ".. \ eglib \ src" / Zi / nologo / W1 / WX- / O1 / Ob1 / Oi / Oy- / D "NDEBUG" / D " i386 " / D "TARGET_X86" / D "i386" / D "WIN32" / D "_WIN32" / D " WIN32 " / D "_WINDOWS" / D "WINDOWS" / D "HOST_WIN32" / D "TARGET_WIN32" / D "_CRT_SECURE_NO_DEPRECATE" / D "GC_NOT_DLL" / D "HAVE_CONFIG_H" / D "WINVER = 0x0500" / D "_WIN32_WINNT = 0x0500" / D "_WIN32_IE = 0x0501" / D "WIN32_THREADS" / D "FD_SETSIZE = 1024" / D " default_codegen"/ D" MONO_ASSEMBLIES = 0 "/ D" _UNICODE "/ D" UNICODE "/ GF / Gm- / EHsc / MT / GS / Gy / fp:precise / Zc:wchar_t / Zc:forScope/Fp"。\Release/ libmono.pch "/ Fa" Win32 \ obj \ libmono \ "/ Fo" Win32 \ obj \ libmono \ "/ Fd" Win32 \ obj \ libmono \ vc100.pdb "/ Gd / TC / analysis- / errorReport:queue
UPD:
私の質問に関連するこのディスカッションを見つけましたhttp://mono.1490590.n4.nabble.com/Mono-static-library-td3546774.html
それはまだ実際ですか?Boehmの代わりにSGenを使用できますか?はいの場合、ヒントをいただければ幸いです。はいの場合、sgenを使用して静的ライブラリとしてmonoを使用できますか?