#35: ABCL.Net.dll -- Using IKVM-patch to make ABCL run on .NET and MONO -------------------------+-------------------------------------------------- Reporter: dmiles | Owner: somebody Type: enhancement | Status: new Priority: major | Milestone: 0.13 Component: component1 | Version: 1.0 Keywords: ikvm | -------------------------+-------------------------------------------------- HOWTO:
First Patch the ABCL sources:
[root@titan abcl]# patch -p0 < svn11486-ikvm.patch (Stripping trailing CRs from patch.) patching file src/org/armedbear/lisp/Complex.java (Stripping trailing CRs from patch.) patching file src/org/armedbear/lisp/IkvmSite.java (Stripping trailing CRs from patch.) patching file src/org/armedbear/lisp/Lisp.java (Stripping trailing CRs from patch.) patching file src/org/armedbear/lisp/Load.java (Stripping trailing CRs from patch.) patching file src/org/armedbear/lisp/Nil.java (Stripping trailing CRs from patch.) patching file src/org/armedbear/lisp/Pathname.java
Clean: [root@titan abcl]# rm -rf build dist
Build ABCL: [root@titan abcl]#ant abcl.dist ....
Download the latest binaries from http://ikvm.net I use the "stable" ones: 0.36.0.11
Unzip the binaries to a $ABCL_HOME/bin/
Update MON_PATH:
export MONO_PATH=.:bin
Build the ABCL.Net.dll and abcl.exe alias ikvmc='mono bin/ikvmc.exe '
[root@titan abcl]# ikvmc -compressresources -recurse:build/classes/ -out:ABCL.Net.dll Note IKVMC0003: automatically adding reference to "/development/mirrors /ABCL-SVN/trunk/abcl/bin/IKVM.OpenJDK.ClassLibrary.dll"
[root@titan abcl]# ikvmc -r:ABCL.Net.dll -main:org.armedbear.lisp.Main -out:abcl.exe Note IKVMC0003: automatically adding reference to "bin/IKVM.OpenJDK.ClassLibrary.dll"
Run it:
[root@titan abcl]# mono abcl.exe Armed Bear Common Lisp 0.13.0-dev (built Fri Dec 26 2008 19:15:42 PST) Java 1.6.0 Jeroen Frijters IKVM.NET Low-level initialization completed in 0.159 seconds. Startup completed in 3.067 seconds. Type ":help" for a list of available commands. CL-USER(1): *FEATURES* (:IKVM :X86 :JAVA-1.6 :ARMEDBEAR :ABCL :COMMON-LISP :ANSI-CL)
I use the following .dll in a C# project at http://code.google.com/p/opensim4opencog/source/detail?r=28
Have fun.. how soon can we just have this patch applied to ABCL src?