2011-08-07 9 views
3

私は.NET 4(System.Numerics)を使用したいF#プロジェクトを持っています。しかし、私は(私はMonoDevelopのを使用しています).NET 4でコンパイルしようとすると、私はエラーを得た:Mac OSXを使用してMonoで.NET 4を使用したmscorlibエラー

unknown-file: Error 0: warning FS0217: The referenced or default base CLI library 'mscorlib' is binary-incompatible with the referenced library '/Library/Frameworks/Mono.framework/Versions/2.10.1/lib/mono/4.0/System.dll'. Consider recompiling the library or making an explicit reference to a version of this library that matches the CLI version you are using. (0) (ApproximationSuite)

誰もが、私はこのラウンドを取得することができる方法を知っていますか?

+0

Monoのどのバージョンをお使いですか? – abatishchev

+0

mono version 2.10.1 monoDevelopバージョン2.4.2 – Aidan

+0

F#の2.0バージョンにはまだ 'System.Numerics.BigInteger'(FSharp.Core.dllの中に)が含まれています。 – Brian

答えて

2

このようなバージョン4、mscorlibする明示的な参照を行います。

<Reference Include="mscorlib" /> 

次に別の、同様のエラーは、(あなたが互換性のないFSharp.Coreを持っていること)に表示することができます。これは、このライブラリの4.0バージョンではないためです。しかし、コンパイルされたバージョンは、thisのようなパッケージのv4.0サブディレクトリにあります(そのスクリプトはv4.0をgacにインストールしないことに注意してください)。 4.0バージョンをMonoDevelopが探す場所(おそらく/ usr/lib/fsharp /)に置くと、それはうまくコンパイルされるはずです。

1

4.0バージョンを対象とするFSharp.Core.dllとfsc.exeを再コンパイルして、そのFSharp.Core.dllを使用できます。うまくいくはずです。私は2.0であなたのために働いたと仮定します。そうでない場合は、プロジェクトに関する詳細を記入してください(おそらくfsprojsの一部ですか?)。

関連する問題