3

ExEnとMonoTouchを使用して、XNAとFarseerPhysics3.3を使用してiOS用のゲームを構築しようとしています。理論的にはこれは問題なく動作するはずですが、FarseerをiPhoneで動作させるのに問題があります。

私はFarseerをMonoTouch/ExEn用にコンパイルしましたが、iPhoneシミュレーターでうまく機能します。しかし、実際のiPhoneに切り替えるとすぐに、プロジェクトはコンパイルされなくなります。この問題は、MonoDevelopリンカーで発生しているようです。コンパイラが「mtouchexitedwithcode 1」というメッセージで爆破し、次のリンカーエラー出力が表示されます:http://pastebin.com/y62ykJP2。プロジェクトオプションでリンクを無効にすると、アプリケーションがコンパイルされてiPhoneにデプロイされますが、クラッシュします。

Farseerによって定義されたオブジェクトをインスタンス化するすべてのコードをコメントアウトすると、リンカーエラーは発生せず、プログラムは正常にデプロイおよび実行されます。したがって、問題は明らかに、MonoTouch用のFarseerのビルドにあります。

残念ながら、ここからどこへ行けばいいのかわかりません。このようなリンカーエラーをどこから探し始めればよいですか?または、さらに良い方法:Farseer 3.3を正常にコンパイルし、MonoTouchおよびExEnで使用した人はいますか?

4

1 に答える 1

2

MonoTouchで.NET4.0用にコンパイルされたアセンブリを使用しようとしています。これは機能しません(アセンブリがMonoTouchに存在しないメソッドを参照しているために発生するリンカー例外です)。

解決策は、MonoTouchを使用して参照するすべてのアセンブリをコンパイルすることです。Farseer用のMonoTouchプロジェクトを既に作成している人がいないかどうかを確認してください。作成していない場合は、自分で作成する必要があります。

于 2012-01-31T12:24:19.653 に答える