1

どうやら、Mono.Cairo のバージョンが競合しているようです。/usr/lib/mono/gac/Mono.Cairo には、バージョン 2.0 用とバージョン 4.0 用の 2 つのフォルダーがあることがわかります。Googleの結果で読んだことから、これは競合を引き起こしています。問題を引き起こしているコード行はusing (Cairo.Context ctx = Gdk.CairoHelper.Create (area.GdkWindow))

どうやら、この質問はここで回答されているようですが、彼らが何を言っているのかわかりません。だから私はあなたにそれを言います:競合しないCairo.Contextを使用するdmcsを取得する方法はありますか?

私はUbuntu 12.04をxmonadで使用しています。最新バージョンはapt-getのモノコンプリートパッケージです。

コンパイルするには、次のように記述します: dmcs -pkg:gtk-sharp -pkg:mono-cairo Teikniforrit.csTeikniforrit.cs は単純なペイント ツールです。mcs と gmcs は私のために働いたことはありません。Windows 7 で mono をセットアップして、それがどのように機能するかを確認しました。gmcs では正常に機能しますが、mcs や dmcs では機能しません。

4

3 に答える 3

1

少し前に見たのと同じバグに見舞われている可能性が非常に高く、Mono が提供するバグのある PC ファイルで構成されています。私はこのコミットで問題を修正しました。Mono をアップグレードしてみてください。

于 2013-04-06T16:08:29.693 に答える
0

それを使用するには、同じ「バージョン」の Cairo.Context が必要です。

あなたの場合、このように Cairo.Context を見ることができます

  1. あなたはCairo.Contextで2.0です
  2. あなたはCairo.Contextで4.0です
  3. Cairo.Context 2.0 は Cairo.Context 4.0 と比較されます
  4. 2.0 != 4.0 なので同じではありません

これは、コードが機能しない理由を説明するためのより良い方法です。

あなたの投稿で参照されているソリューションは、それを説明し、すべての場合に適切なバージョンを持ち、問題を回避するために使用するバージョンを修正する方法を指定しています.

于 2013-04-05T15:03:07.943 に答える
0

knocte が言ったように、この状況は mono で修正されたバグに正確に対応しています。

私は同じ問題に遭遇し、モノの新しいバージョンをインストールするとそれらが修正されました。現在までの最新のubuntu(13.04)にはまだ統合されていないため、このリンクが非常に役立つことがわかりました:http://www.meebey.net/posts/mono_3.0_preview_debian_ubuntu_packages/

これにより、手動でコンパイルする手間をかけずに、新しいモノをインストールできます。

于 2013-05-13T11:35:28.470 に答える