Comments (28)
I fix my patch to add forgotten dependencies but errors about override stay unfixed:
--- configure.sh 2011-07-23 11:32:58.000000000 +0400
+++ configure.sh 2011-07-23 11:36:06.226984026 +0400
@@ -23,7 +23,5 @@
echo ""
echo "Press enter to continue..."
-read a
-
# ------------------------------------------------------------------------------
# Parse command line arguments and specify default values
@@ -83,12 +81,17 @@
MDDIR=$RESULT
echo "Successfully found MonoDevelop root directory." $MDDIR
-PATHS=( /usr/lib/fsharp /usr/local/lib/fsharp /opt/mono/lib/mono/2.0 )
+PATHS=( /usr/lib/mono/4.0 /usr/lib/fsharp )
searchpaths "F#" FSharp.Core.dll PATHS[@]
FSDIR=$RESULT
echo "Successfully found F# root directory." $FSDIR
+
+PATHS=( /usr/lib/mono/mono-addins )
+searchpaths "Mono.Addins" Mono.Addins.dll PATHS[@]
+MADIR=$RESULT
+echo "Successfully found Mono.Addins root directory." $MADIR
-PATHS=( /usr/lib/mono/2.0 /Library/Frameworks/Mono.framework/Versions/2.8/lib/mono/2.0 /opt/mono/lib/mono/2.0 )
+PATHS=( /usr/lib/mono/4.0 )
searchpaths "Mono" mscorlib.dll PATHS[@]
MONODIR=$RESULT
echo "Successfully found Mono root directory." $MONODIR
@@ -135,3 +137,5 @@
sed "s,INSERT_CSHARP_COMPILER,$GMCS,g" Makefile.1 > Makefile.2
+sed "s,INSERT_MA_ROOT,$MADIR,g" Makefile.2 > Makefile.1
+rm Makefile.2
+mv Makefile.1 Makefile
-rm Makefile.1
-mv Makefile.2 Makefile
+
--- Makefile.orig 2011-07-29 19:16:55.000000000 +0400
+++ Makefile.orig 2011-07-29 19:18:10.000000000 +0400
@@ -7,3 +7,4 @@
MDROOT = INSERT_MD_ROOT
+MAROOT = INSERT_MA_ROOT
MONOBIN = INSERT_MONO_BIN
FSBIN = INSERT_FSHARP_BIN
@@ -59,5 +60,5 @@
REFERENCES = \
-r:$(MONOBIN)/mscorlib.dll \
- -r:System.dll -r:System.Xml.dll \
+ -r:System.dll -r:System.Xml.dll -r:Mono.Posix.dll -r:$(MAROOT)/Mono.Addins.dll -r:Mono.Cairo.dll \
-r:$(MDBIN)/MonoDevelop.Core.dll \
-r:$(MDBIN)/MonoDevelop.Ide.dll \
--- src/Services/FSharpCompiler.fs 2011-07-29 19:16:55.000000000 +0400
+++ src/Services/FSharpCompiler.fs 2011-07-29 19:18:10.000000000 +0400
@@ -74,7 +74,7 @@
/// Wrapper type for the 'FSharp.Compiler.dll' assembly - expose types we use
type FSharpCompiler private () =
- static let asm = Assembly.Load("FSharp.Compiler, Version=2.0.0.0, Culture=neutral, PublicKeyToken=a19089b1c74d0809")
+ static let asm = Assembly.Load("FSharp.Compiler, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
static member InteractiveChecker = asm.GetType("Microsoft.FSharp.Compiler.SourceCodeServices.InteractiveChecker")
static member IsResultObsolete = asm.GetType("Microsoft.FSharp.Compiler.SourceCodeServices.IsResultObsolete")
static member CheckOptions = asm.GetType("Microsoft.FSharp.Compiler.SourceCodeServices.CheckOptions")
@@ -84,7 +84,7 @@
/// Wrapper type for the 'FSharp.Compiler.Server.Shared.dll' assembly - expose types we use
type FSharpCompilerServerShared private () =
- static let asm = Assembly.Load("FSharp.Compiler.Server.Shared, Version=2.0.0.0, Culture=neutral, PublicKeyToken=a19089b1c74d0809")
+ static let asm = Assembly.Load("FSharp.Compiler.Server.Shared, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
static member InteractiveServer = asm.GetType("Microsoft.FSharp.Compiler.Server.Shared.FSharpInteractiveServer")
// --------------------------------------------------------------------------------------
gmcs -debug+ -out:bin/FSharpBinding.Gui.dll -target:library -r:/usr/lib/mono/4.0/mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Posix.dll -r:/usr/lib/mono/mono-addins/Mono.Addins.dll -r:Mono.Cairo.dll -r:/usr/lib/monodevelop/bin/MonoDevelop.Core.dll -r:/usr/lib/monodevelop/bin/MonoDevelop.Ide.dll -r:/usr/lib/monodevelop/bin/Mono.TextEditor.dll -r:/usr/lib/mono/4.0/FSharp.Core.dll -r:/usr/lib/mono/4.0/FSharp.Compiler.dll -r:/usr/lib/mono/4.0/FSharp.Compiler.Interactive.Settings.dll -r:/usr/lib/mono/4.0/FSharp.Compiler.Server.Shared.dll -r:/usr/lib/mono/gtk-sharp-2.0/atk-sharp.dll -r:/usr/lib/mono/gtk-sharp-2.0/pango-sharp.dll -r:/usr/lib/mono/gtk-sharp-2.0/gtk-sharp.dll -r:/usr/lib/mono/gtk-sharp-2.0/gdk-sharp.dll -r:/usr/lib/mono/gtk-sharp-2.0/glib-sharp.dll src/Gui/FSharpBuildOrderWidget.cs src/Gui/FSharpSettingsWidget.cs src/Gui/FSharpCompilerOptionsWidget.cs src/Gui/gtk-gui/FSharp.MonoDevelop.Gui.FSharpBuildOrderWidget.cs src/Gui/gtk-gui/FSharp.MonoDevelop.Gui.FSharpSettingsWidget.cs src/Gui/gtk-gui/FSharp.MonoDevelop.Gui.FSharpCompilerOptionsWidget.cs src/Gui/gtk-gui/generated.cs
fsharpc --noframework --debug --optimize- --target:library -r:bin/FSharpBinding.Gui.dll --out:bin/FSharpBinding.dll -r:/usr/lib/mono/4.0/mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Posix.dll -r:/usr/lib/mono/mono-addins/Mono.Addins.dll -r:Mono.Cairo.dll -r:/usr/lib/monodevelop/bin/MonoDevelop.Core.dll -r:/usr/lib/monodevelop/bin/MonoDevelop.Ide.dll -r:/usr/lib/monodevelop/bin/Mono.TextEditor.dll -r:/usr/lib/mono/4.0/FSharp.Core.dll -r:/usr/lib/mono/4.0/FSharp.Compiler.dll -r:/usr/lib/mono/4.0/FSharp.Compiler.Interactive.Settings.dll -r:/usr/lib/mono/4.0/FSharp.Compiler.Server.Shared.dll -r:/usr/lib/mono/gtk-sharp-2.0/atk-sharp.dll -r:/usr/lib/mono/gtk-sharp-2.0/pango-sharp.dll -r:/usr/lib/mono/gtk-sharp-2.0/gtk-sharp.dll -r:/usr/lib/mono/gtk-sharp-2.0/gdk-sharp.dll -r:/usr/lib/mono/gtk-sharp-2.0/glib-sharp.dll --resource:src/Resources/FSharpBinding.addin.xml --resource:src/Resources/EmptyFSharpSource.xft.xml --resource:src/Resources/EmptyFSharpScript.xft.xml --resource:src/Resources/FSharpConsoleProject.xpt.xml --resource:src/Resources/fsharp-icon-32.png --resource:src/Resources/fsharp-script-32.png --resource:src/Resources/fsharp-file-icon.png --resource:src/Resources/fsharp-project-icon.png --resource:src/Resources/fsharp-script-icon.png --resource:src/Resources/FSharpSyntaxMode.xml src/PowerPack/CodeDomVisitor.fs src/PowerPack/CodeDomGenerator.fs src/PowerPack/CodeProvider.fs src/PowerPack/LazyList.fsi src/PowerPack/LazyList.fs src/Services/Mailbox.fs src/Services/Parameters.fs src/Services/FSharpCompiler.fs src/Services/CompilerLocationUtils.fs src/Services/Common.fs src/Services/Parser.fs src/Services/LanguageService.fs src/Services/CompilerService.fs src/Services/InteractiveSession.fs src/FSharpInteractivePad.fs src/FSharpOptionsPanels.fs src/FSharpSyntaxMode.fs src/FSharpResourceIdBuilder.fs src/FSharpLanguageBinding.fs src/FSharpParser.fs src/FSharpTextEditorCompletion.fs src/FSharpResolverProvider.fs
Microsoft (R) F# 2.0 Compiler build (private)
Copyright (c) 2002-2010 Microsoft Corporation. All Rights Reserved.
/tmp/portage/dev-dotnet/fsharpbinding-9999/work/fsharpbinding-9999/src/PowerPack/CodeDomGenerator.fs(248,44): warning FS0044: This construct is deprecated
/tmp/portage/dev-dotnet/fsharpbinding-9999/work/fsharpbinding-9999/src/Services/Parameters.fs(45,14): error FS0855: No abstract or interface member was found that corresponds to this override
/tmp/portage/dev-dotnet/fsharpbinding-9999/work/fsharpbinding-9999/src/Services/Parameters.fs(51,14): error FS0855: No abstract or interface member was found that corresponds to this override
from zarchive-fsharpbinding.
hi,
i had a similar problem (Mono.Unix) on OS X. i tried the patch above but got stuck a bit earlier:
Successfully found MonoDevelop root directory. /Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop
Successfully found F# root directory. /usr/lib/fsharp
Successfully found Mono.Addins root directory. /Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gac/Mono.Addins/0.6.0.0__0738eb9f132ed756
Successfully found Mono root directory. /Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/4.0
Successfully found Gtk# root directory. /Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0
Successfully found Glib# root directory. /Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0
Successfully found Atk# root directory. /Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0
Successfully found Gdk# root directory. /Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0
Successfully found Pango root directory. /Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0
andrei-istudors-MacBook-Pro:fsharpbinding andreii$ make
mkdir -p bin
gmcs -debug+ -out:bin/FSharpBinding.Gui.dll -target:library -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/4.0/mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Posix.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gac/Mono.Addins/0.6.0.0__0738eb9f132ed756/Mono.Addins.dll -r:Mono.Cairo.dll -r:/Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop/bin/MonoDevelop.Core.dll -r:/Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop/bin/MonoDevelop.Ide.dll -r:/Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop/bin/Mono.TextEditor.dll -r:/usr/lib/fsharp/FSharp.Core.dll -r:/usr/lib/fsharp/FSharp.Compiler.dll -r:/usr/lib/fsharp/FSharp.Compiler.Interactive.Settings.dll -r:/usr/lib/fsharp/FSharp.Compiler.Server.Shared.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/atk-sharp.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/pango-sharp.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/gtk-sharp.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/gdk-sharp.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/glib-sharp.dll src/Gui/FSharpBuildOrderWidget.cs src/Gui/FSharpSettingsWidget.cs src/Gui/FSharpCompilerOptionsWidget.cs src/Gui/gtk-gui/FSharp.MonoDevelop.Gui.FSharpBuildOrderWidget.cs src/Gui/gtk-gui/FSharp.MonoDevelop.Gui.FSharpSettingsWidget.cs src/Gui/gtk-gui/FSharp.MonoDevelop.Gui.FSharpCompilerOptionsWidget.cs src/Gui/gtk-gui/generated.cs
fsharpc --noframework --debug --optimize- --target:library -r:bin/FSharpBinding.Gui.dll --out:bin/FSharpBinding.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/4.0/mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Posix.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gac/Mono.Addins/0.6.0.0__0738eb9f132ed756/Mono.Addins.dll -r:Mono.Cairo.dll -r:/Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop/bin/MonoDevelop.Core.dll -r:/Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop/bin/MonoDevelop.Ide.dll -r:/Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop/bin/Mono.TextEditor.dll -r:/usr/lib/fsharp/FSharp.Core.dll -r:/usr/lib/fsharp/FSharp.Compiler.dll -r:/usr/lib/fsharp/FSharp.Compiler.Interactive.Settings.dll -r:/usr/lib/fsharp/FSharp.Compiler.Server.Shared.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/atk-sharp.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/pango-sharp.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/gtk-sharp.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/gdk-sharp.dll -r:/Library/Frameworks/Mono.framework/Versions/2.10.6/lib/mono/gtk-sharp-2.0/glib-sharp.dll --resource:src/Resources/FSharpBinding.addin.xml --resource:src/Resources/EmptyFSharpSource.xft.xml --resource:src/Resources/EmptyFSharpScript.xft.xml --resource:src/Resources/FSharpConsoleProject.xpt.xml --resource:src/Resources/fsharp-icon-32.png --resource:src/Resources/fsharp-script-32.png --resource:src/Resources/fsharp-file-icon.png --resource:src/Resources/fsharp-project-icon.png --resource:src/Resources/fsharp-script-icon.png --resource:src/Resources/FSharpSyntaxMode.xml src/PowerPack/CodeDomVisitor.fs src/PowerPack/CodeDomGenerator.fs src/PowerPack/CodeProvider.fs src/PowerPack/LazyList.fsi src/PowerPack/LazyList.fs src/Services/Mailbox.fs src/Services/Parameters.fs src/Services/FSharpCompiler.fs src/Services/CompilerLocationUtils.fs src/Services/Common.fs src/Services/Parser.fs src/Services/LanguageService.fs src/Services/CompilerService.fs src/Services/InteractiveSession.fs src/FSharpInteractivePad.fs src/FSharpOptionsPanels.fs src/FSharpSyntaxMode.fs src/FSharpResourceIdBuilder.fs src/FSharpLanguageBinding.fs src/FSharpParser.fs src/FSharpTextEditorCompletion.fs src/FSharpResolverProvider.fs
Microsoft (R) F# 2.0 Compiler build 2.0.0.0
Copyright (c) Microsoft Corporation. All Rights Reserved.
error FS0219: The referenced or default base CLI library 'mscorlib' is binary-incompatible with the referenced F# core library '/usr/lib/fsharp/FSharp.Core.dll'. Consider recompiling the library or making an explicit reference to a version of this library that matches the CLI version you are using.
error FS0218: Unable to read assembly '/usr/lib/fsharp/FSharp.Core.dll'
make: *** [all] Error 1
does this means there's some incompatibility between the MonoDevelop binary and the latest version of Mono? I just don't know where to search anymore. anyone out there tried to compiled this on Mac?
from zarchive-fsharpbinding.
You need to check version of used .NET. Check this for you fsharp and set appropriate version in src/Services/FSharpCompiler.fs and configure.sh
from zarchive-fsharpbinding.
I update Monodevelop to 2.8.2. fsharpbinding became compiled but Monodevelop doesn't use it. If I change 4.0 version in patch to 2.0 version fsharpbinding cann't be compiled.
warning FS0217: The referenced or default base CLI library 'mscorlib' is binary-incompatible with the referenced library '/usr/lib/monodevelop/bin/MonoDevelop.Core.dll'. Consider recompiling the library or making an explicit reference to a version of this library that matches the CLI version you are using.
warning FS0217: The referenced or default base CLI library 'mscorlib' is binary-incompatible with the referenced library '/usr/lib/monodevelop/bin/MonoDevelop.Ide.dll'. Consider recompiling the library or making an explicit reference to a version of this library that matches the CLI version you are using.
warning FS0217: The referenced or default base CLI library 'mscorlib' is binary-incompatible with the referenced library '/usr/lib/monodevelop/bin/Mono.TextEditor.dll'. Consider recompiling the library or making an explicit reference to a version of this library that matches the CLI version you are using.
/tmp/portage/dev-dotnet/fsharpbinding-9999/work/fsharpbinding-9999/src/PowerPack/CodeDomGenerator.fs(248,44): warning FS0044: This construct is deprecated
error FS0193: The module/namespace 'System.Func`1' from compilation unit 'mscorlib' did not contain the namespace, module or type 'Func`1'
/tmp/portage/dev-dotnet/fsharpbinding-9999/work/fsharpbinding-9999/src/Services/LanguageService.fs(415,7): error FS1109: A reference to the type 'System.Func`1' in assembly 'mscorlib' was found, but the type could not be found in that assembly
from zarchive-fsharpbinding.
I shared it in "booboo" Gentoo overlay.
from zarchive-fsharpbinding.
Same problem here on Ubuntu 11.10, which provides Mono 2.10.5 out of the box, and MonoDevelop 2.8.2 from ppa:keks9n/monodevelop-latest.
I hope the F# add-in will work by the end so I can use it in the PL class I am scheduled to teach. Thanks for all the work.
from zarchive-fsharpbinding.
oO1eg, confirm. Patch helped and fsharpbinding compiled but monodevelop282 doesnot see it.
from zarchive-fsharpbinding.
where do I download this patch?
from zarchive-fsharpbinding.
Here #24 (comment)
Patch doesn't help, because monodevelop gets errors when loading addin.
from zarchive-fsharpbinding.
yeah, monodevelop doesn't recognise the generated mpack, installation fails, Following issue occurs
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: Type 'FSharp.MonoDevelop.FSharpProjectFileNodeExtension' not found in add-in 'MonoDevelop.FSharpBinding,2.8.2'
at Mono.Addins.RuntimeAddin.GetType (System.String typeName, Boolean throwIfNotFound) [0x000f6] in /private/tmp/monobuild/build/BUILD/mono-addins-0.6.2/Mono.Addins/Mono.Addins/RuntimeAddin.cs:343
above issue occurs
from zarchive-fsharpbinding.
I made some changes to refer the latest versions binaries for mono in Mac os x. Pushed changes in the following fork: https://github.com/karthikvishnu/fsharpbinding
FSharpbinding works with the above changes also included a library template project
from zarchive-fsharpbinding.
I've changed versions from 2.8 to 2.8.2, added FSharpLibraryProject.xpt.xml and fsharp files as in your patch but monodevelop doesn't see it.
from zarchive-fsharpbinding.
I checked the following things to ensure the new template is recognized by monodevelop
- Make file should be updated to refer the new template as resource. Add " --resource:src/Resources/FSharpLibraryProject.xpt.xml " in makefile.orig
- Ensure "FSharpLibraryProject.xpt.xml" template name in generated assembly, this can be checked using ILSpy, use tat name in addin xml defs
ProjectTemplate id="FSharpLibraryProject" resource="FSharpLibraryProject.xpt.xml"
from zarchive-fsharpbinding.
MonoDevelop says that FSharpLibraryProject.xpt.xml exists in FSharpBinding.dll.
from zarchive-fsharpbinding.
any issues while creating the F# library project template?
from zarchive-fsharpbinding.
Which issues? I got existing project template from your patch.
from zarchive-fsharpbinding.
Is the library template working? Any issues with FSharpBinding addin?
from zarchive-fsharpbinding.
I cann't check it because monodevelop doesn't see this addin.
from zarchive-fsharpbinding.
I have just managed to get monodevelop 2.8.5 working with mono 2.10.8 and your update, karthikvishnu. But I did modify a couple of lines in Services/Common.fs to get it working for me. I changed all references for the compiler that read
/Library/Frameworks/Mono.framework/Versions/2.10.6/...
to
/Library/Frameworks/Mono.framework/Versions/Current/...
as otherwise, the wrong framework was being picked to run the compiler. Given that we are using configure.sh to control the build, it seems that this is a tiny step toward making this slightly less hardcoded.
from zarchive-fsharpbinding.
Oh, and thanks!
from zarchive-fsharpbinding.
Hi, F# coders!
I've installed this bindings on Fedora16 x64 with default mono 2.10.5 + monodevelop 2.8.1 from repository. Code completion and debugging works great.
Maybe, you'll find some of the following scripts useful. Run them from regular user.
- yum install monodevelop autoconf automake
- download fsharp compiler and bindings:
#! /bin/sh
wget -O fsharp-fsharp-6d4f78d.zip https://github.com/fsharp/fsharp/zipball/6d4f78d60b8ca8158a10e348ffc0a050095a18f6
unzip fsharp-fsharp-6d4f78d.zip
wget -O fsharp-fsharpbinding-1154261.zip https://github.com/fsharp/fsharpbinding/zipball/1154261c52504bd5573ba8599ad1e3f17c1eeda9
unzip fsharp-fsharpbinding-1154261.zip
- compile and install fsharp core:
#! /bin/sh
cd fsharp-fsharp-6d4f78d
autoreconf
./configure --prefix=/usr
make
su -c 'make install'
- patch bindings sources and build package for monodevelop:
#! /bin/sh
patch -p0 -i fsharpbinding.fc16.tementy.patch
cd fsharp-fsharpbinding-1154261
./configure.sh
make
make package
Here is patch file: fsharpbinding.fc16.tementy.patch
diff -Naur fsharp-fsharpbinding-1154261/configure.sh fsharp-fsharpbinding-1154261-tementy/configure.sh
--- fsharp-fsharpbinding-1154261/configure.sh 2011-10-21 08:21:36.000000000 +0400
+++ fsharp-fsharpbinding-1154261-tementy/configure.sh 2012-02-02 21:04:40.370680731 +0400
@@ -78,42 +78,42 @@
# ------------------------------------------------------------------------------
# Find all paths that we need in order to generate the make file
-PATHS=( /usr/lib/monodevelop /Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop /opt/mono/lib/monodevelop )
+PATHS=( /usr/lib/monodevelop /usr/lib64/monodevelop )
searchpaths "MonoDevelop" bin/MonoDevelop.Core.dll PATHS[@]
MDDIR=$RESULT
echo "Successfully found MonoDevelop root directory." $MDDIR
-PATHS=( /usr/lib/fsharp /usr/local/lib/fsharp /opt/mono/lib/mono/2.0 )
+PATHS=( /usr/lib/mono/4.0 /usr/lib64/mono/4.0 )
searchpaths "F#" FSharp.Core.dll PATHS[@]
FSDIR=$RESULT
echo "Successfully found F# root directory." $FSDIR
-PATHS=( /usr/lib/mono/2.0 /Library/Frameworks/Mono.framework/Versions/2.8/lib/mono/2.0 /opt/mono/lib/mono/2.0 )
+PATHS=( /usr/lib/mono/4.0 /usr/lib64/mono/4.0 )
searchpaths "Mono" mscorlib.dll PATHS[@]
MONODIR=$RESULT
echo "Successfully found Mono root directory." $MONODIR
-PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib/cli/gtk-sharp-2.0 /Library/Frameworks/Mono.framework/Versions/2.8/lib/mono/gtk-sharp-2.0 /opt/mono/lib/mono/gtk-sharp-2.0 )
+PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib64/mono/gtk-sharp-2.0 )
searchpaths "Gtk#" gtk-sharp.dll PATHS[@]
GTKDIR=$RESULT
echo "Successfully found Gtk# root directory." $GTKDIR
-PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib/cli/glib-sharp-2.0 /Library/Frameworks/Mono.framework/Versions/2.8/lib/mono/gtk-sharp-2.0 /opt/mono/lib/mono/gtk-sharp-2.0 )
+PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib64/mono/gtk-sharp-2.0 )
searchpaths "Glib" glib-sharp.dll PATHS[@]
GLIBDIR=$RESULT
echo "Successfully found Glib# root directory." $GLIBDIR
-PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib/cli/atk-sharp-2.0 /Library/Frameworks/Mono.framework/Versions/2.8/lib/mono/gtk-sharp-2.0 /opt/mono/lib/mono/gtk-sharp-2.0 )
+PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib64/mono/gtk-sharp-2.0 )
searchpaths "Atk#" atk-sharp.dll PATHS[@]
ATKDIR=$RESULT
echo "Successfully found Atk# root directory." $ATKDIR
-PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib/cli/gdk-sharp-2.0 /Library/Frameworks/Mono.framework/Versions/2.8/lib/mono/gtk-sharp-2.0 /opt/mono/lib/mono/gtk-sharp-2.0 )
+PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib64/mono/gtk-sharp-2.0 )
searchpaths "Gdk#" gdk-sharp.dll PATHS[@]
GDKDIR=$RESULT
echo "Successfully found Gdk# root directory." $GDKDIR
-PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib/cli/pango-sharp-2.0 /Library/Frameworks/Mono.framework/Versions/2.8/lib/mono/gtk-sharp-2.0 /opt/mono/lib/mono/gtk-sharp-2.0 )
+PATHS=( /usr/lib/mono/gtk-sharp-2.0 /usr/lib64/mono/gtk-sharp-2.0 )
searchpaths "Pango#" pango-sharp.dll PATHS[@]
PANGODIR=$RESULT
echo "Successfully found Pango root directory." $PANGODIR
diff -Naur fsharp-fsharpbinding-1154261/Makefile.orig fsharp-fsharpbinding-1154261-tementy/Makefile.orig
--- fsharp-fsharpbinding-1154261/Makefile.orig 2011-10-21 08:21:36.000000000 +0400
+++ fsharp-fsharpbinding-1154261-tementy/Makefile.orig 2012-02-02 21:15:01.428698890 +0400
@@ -13,7 +13,7 @@
GDKDIR = INSERT_GDK_DIR
GLIBDIR = INSERT_GLIB_DIR
MONO = INSERT_MONO
-MDRUN = $(MONO) $(MDROOT)/bin/mdrun.exe
+MDRUN = $(MONO) $(MDROOT)/bin/mdtool.exe
FSC = INSERT_FSHARP_COMPILER
CSC = INSERT_CSHARP_COMPILER
@@ -54,11 +54,15 @@
src/FSharpLanguageBinding.fs \
src/FSharpParser.fs \
src/FSharpTextEditorCompletion.fs \
- src/FSharpResolverProvider.fs
+ src/FSharpResolverProvider.fs \
+ src/FSharpProjectServiceExtension.fs \
+ src/FSharpProjectFileNodeExtension.fs
REFERENCES = \
-r:$(MONOBIN)/mscorlib.dll \
-r:System.dll -r:System.Xml.dll \
+ -r:Mono.Posix.dll -r:Mono.Cairo.dll \
+ -r:../mono-addins/Mono.Addins.dll \
-r:$(MDBIN)/MonoDevelop.Core.dll \
-r:$(MDBIN)/MonoDevelop.Ide.dll \
-r:$(MDBIN)/Mono.TextEditor.dll \
@@ -107,5 +111,6 @@
mkdir -p repository
cp bin/FSharpBinding.* bin/repository
cp src/Resources/FSharpBinding.addin.xml bin/repository
+ cp $(FSBIN)/FSharp.*.dll $(FSBIN)/FSharp.*.optdata $(FSBIN)/FSharp.*.sigdata $(FSBIN)/fsc.exe $(FSBIN)/fsi.exe bin/repository
$(MDRUN) setup pack bin/repository/FSharpBinding.addin.xml -d:repository
diff -Naur fsharp-fsharpbinding-1154261/src/Services/FSharpCompiler.fs fsharp-fsharpbinding-1154261-tementy/src/Services/FSharpCompiler.fs
--- fsharp-fsharpbinding-1154261/src/Services/FSharpCompiler.fs 2011-10-21 08:21:36.000000000 +0400
+++ fsharp-fsharpbinding-1154261-tementy/src/Services/FSharpCompiler.fs 2012-02-02 20:29:09.911953267 +0400
@@ -74,7 +74,7 @@
/// Wrapper type for the 'FSharp.Compiler.dll' assembly - expose types we use
type FSharpCompiler private () =
- static let asm = Assembly.Load("FSharp.Compiler, Version=2.0.0.0, Culture=neutral, PublicKeyToken=a19089b1c74d0809")
+ static let asm = Assembly.Load("FSharp.Compiler, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
static member InteractiveChecker = asm.GetType("Microsoft.FSharp.Compiler.SourceCodeServices.InteractiveChecker")
static member IsResultObsolete = asm.GetType("Microsoft.FSharp.Compiler.SourceCodeServices.IsResultObsolete")
static member CheckOptions = asm.GetType("Microsoft.FSharp.Compiler.SourceCodeServices.CheckOptions")
@@ -84,7 +84,7 @@
/// Wrapper type for the 'FSharp.Compiler.Server.Shared.dll' assembly - expose types we use
type FSharpCompilerServerShared private () =
- static let asm = Assembly.Load("FSharp.Compiler.Server.Shared, Version=2.0.0.0, Culture=neutral, PublicKeyToken=a19089b1c74d0809")
+ static let asm = Assembly.Load("FSharp.Compiler.Server.Shared, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
static member InteractiveServer = asm.GetType("Microsoft.FSharp.Compiler.Server.Shared.FSharpInteractiveServer")
// --------------------------------------------------------------------------------------
from zarchive-fsharpbinding.
Thanks karthikvishnu and hardlianotion,
With your efforts combined this was a breeze: https://github.com/karthikvishnu/fsharpbinding is 99% of the way there (on OSX), with just one thing missing:
//SNIP from hardlianotion's post
I have just managed to get monodevelop 2.8.5 working with mono 2.10.8 and your update, karthikvishnu. But I did modify a couple of lines in Services/Common.fs to get it working for me. I changed all references for the compiler that read
/Library/Frameworks/Mono.framework/Versions/2.10.6/...
to
/Library/Frameworks/Mono.framework/Versions/Current/...
// SNIP
BTW are there any maintainers still on this project? Karthikvishnu - if you could make the above change in your own repo, that would be ideal! F# is just getting started...
tementy - good to share, but it unfortunately includes your own filesystem path and removes the Library/... used on MacOSX from the PATHS.
from zarchive-fsharpbinding.
I took farley13's fix and created a fork with instructions on how to build on OS X (10.7 w/ Mono Develop 2.8.6.5):
$ git clone git://github.com/thomaschrstnsn/fsharpbinding.git
$ cd fsharpbinding
$ ./configure.sh # press enter
$ make && make install
$ ln -s /Library/Frameworks/Mono.framework/Versions/Current/lib/mono/4.0/FSharp.Core.dll /Applications/MonoDevelop.app/Contents/MacOS/lib/monodevelop/AddIns/BackendBindings
Note: the package built with 'make package' will not install correctly on my machine and I have not looked further into this, therefore the 'make install'.
from zarchive-fsharpbinding.
Thanks guys.
Thanks, thomaschrstnsn, for the easy instructions.
I just got a mac, wanted to do some FSharping and ran into this problem.
I solved a few compile and reference errors but was a bit discouraged by the CLI binary incompatibility problems.
Too bad they haven't updated the FSharp AddIn package for the latest release of MonoDevelop 2.8.
from zarchive-fsharpbinding.
I finally got it to work on Ubuntu 11.10 based on a synthesis tementy and thomaschrstnsn's comments and modifications, including the symbolic link in monodevelop/AddIns. Code completion does appear to work. Just in time for class tonight. Thanks, guys!
https://github.com/klaeufer/fsharpbinding
from zarchive-fsharpbinding.
FYI, the add-in currently compiles for me against MonoDevelop 2.8.2 but not 2.8.8.4, where I get these errors:
/home/laufer/Work/GitHub/klaeufer/fsharpbinding-2.8.8.4/src/PowerPack/CodeDomGenerator.fs(248,44): warning FS0044: This construct is deprecated
/home/laufer/Work/GitHub/klaeufer/fsharpbinding-2.8.8.4/src/FSharpProjectServiceExtension.fs(17,14): error FS0855: No abstract or interface member was found that corresponds to this override
/home/laufer/Work/GitHub/klaeufer/fsharpbinding-2.8.8.4/src/FSharpProjectServiceExtension.fs(18,10): error FS0039: The field, constructor or member 'PopulateSupportFileList' is not defined
I have not tried any MD versions in between.
from zarchive-fsharpbinding.
Klaeufer, I got exactly the same error on my mac (OS X 10.7.3, MonoDevelop 2.8.8.4).
I used thomaschrstnsn's repository and it compiled with OS X 10.6 and MonoDevelop 2.8.1 (thanks, thomaschrstnsn!). I just copied the files to the MonoDevelop 2.8.8.4 directory and create the link, and it works very well.
from zarchive-fsharpbinding.
closing out this issue since the addin now compiles for MonoDevelop 3.0.x
from zarchive-fsharpbinding.
Related Issues (20)
- Can't compile code in Windows HOT 6
- Syntax highlighting doesn't cope with international chars HOT 3
- Emacs autocomplete with .net 4.5 references HOT 12
- Documentation comments in MonoDevelop are broken since new ToolTip on Linux HOT 1
- Adding Glyph to Completion output in fsautocomplete HOT 8
- Syntax highlighting: Strange output HOT 5
- [emacs] Symbol's function definition is void: -any HOT 1
- Tutorial creates empty project HOT 2
- fsharpbinding does not parse ProjectReferences? HOT 1
- fsautocomplete will not start under mono 3.2.8 in Ubuntu/Linux Trusty HOT 1
- FSX script crashing fsautocomplete. HOT 1
- fsautocomplete.exe not run with mono 3.2.8 HOT 1
- Question on error HOT 3
- Missing type info tooltips in Lubuntu 14.04 HOT 2
- Auto-completion for fsx files stops working HOT 3
- [github] Escaped double quotes in verbatim strings conflict with triple-quoted strings HOT 3
- NRE when creating an .fsx file in XS HOT 1
- Atom.io support? HOT 20
- fsharpbinding is not available as the default package in SublimeText package control HOT 4
- could not import MSBuildExtensionPath32 in Monodevelop HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zarchive-fsharpbinding.