MIPS プラットフォーム用に Mono フレームワーク (3.0.6) をクロスコンパイルしようとしています。私が見つけた問題はほとんどないので、コミュニティに既知かどうかを尋ねたいと思います。
私の環境: Linux 3.2.0-39-generic #62-Ubuntu SMP Thu Feb 28 00:28:53 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
ツールチェーン : Sourcery G++ Lite 4.3-51
コマンドライン:
./configure --prefix=/home/dev/mono-3.0.6-mips --host=mips-linux-gnu --enable-minimal=profiler,debug,logging,soft_debug --without-mcs-docs -- target=mips-linux-gnu --with-moonlight=no --with-tls=pthread --with-sigaltstack=no --with-profile4_5=yes CXXFLAGS="-mips32r2 -march=24kf -mtune=24kf -EL " CFLAGS="-mips32r2 -march=24kf -mtune=24kf -EL" && make
問題 #1 : なんとか構成したところ、次のエラーでコンパイルが停止しました。
mini-gc.c:2551: エラー: 'mini_gc_enable_gc_maps_for_aot' の再定義
mini-gc.c:2518: エラー: 'mini_gc_enable_gc_maps_for_aot' の以前の定義はここにありました
問題 #2 : mini_gc_enable_gc_maps_for_aot の 2 番目の宣言をコメントアウトした後、コンパイルしましたが、 Sourcery G++ リンカがクラッシュしたようです:
/home/dev/mips-4.3/bin/../lib/gcc/mips-linux-gnu/4.3.2/../../../../mips-linux-gnu/bin/ld: BFD (Sourcery G++ Lite 4.3-51) 2.18.50.20080215 アサーション失敗 /scratch/clm/2008q3-lite/obj/binutils-src-4.3-51-mips-linux-gnu-i686-pc-linux-gnu/bfd/elfxx -mips.c:2651
誰かがこの問題に光を当てることができますか? MIPS アーキテクチャ用の Mono の構築に関する記事や情報は見つかりませんでした (少なくとも最近の情報)。このリンクによると、MIPS のサポートは約 1 年前に追加されました。Mono 自体はバージョン 3.0.4以降、MIPS を完全にサポートする必要があります。