I am using FSharp.Compiler.CodeDom (from PowerPack ) to dynamically create F # classes. The problem is that I have VS2008 and VS2010 on my computer side by side (they work fine), and using F # in this configuration is buggy at best:
If I install InstallFSharp.msi, then in VS2008 the built classes will use the F # created for VS2010 and will throw a binary incompatibility exception because it will load the .net4 variant:
FSC: error FS0219: default or default CLI base library - mscorlib - incompatible with the F # 'C: \ Program Files (x86) \ Microsoft F # \ v4.0 \ FSharp.Core.dll core library. Consider recompiling the library or explicitly linking to a version of that library that matches the version of the CLI you are using.
If I replaced the F # found in the previous location with separately installed dlls, then, of course, VS2010 will complain about binary incompatibility
Am I missing something, or will they not just work for a common environment like this? This can mean real problems when deploying applications.
thank
: VS 2008, VS 2010. F # , .
, , - -noframework. () , mscorlib.dll System.dll , , , .NET-.
, , , PowerPack? , 27 , , 30 . , - , .
, , :)
, reghack (Windows 7): Windows 5.00
[- HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\FSharp\2.0\ ]
, / , , , 2.0. , reg.