[cells-gtk-cvs] CVS update: root/INSTALL.TXT root/load.lisp
Kenny Tilton
ktilton at common-lisp.net
Thu Dec 16 16:36:27 UTC 2004
Update of /project/cells-gtk/cvsroot/root
In directory common-lisp.net:/tmp/cvs-serv30140
Modified Files:
INSTALL.TXT load.lisp
Log Message:
Adjust INSTALL.TXT and Load.lisp in UFFI version to conform with UFFI version
Date: Thu Dec 16 17:36:26 2004
Author: ktilton
Index: root/INSTALL.TXT
diff -u root/INSTALL.TXT:1.1 root/INSTALL.TXT:1.2
--- root/INSTALL.TXT:1.1 Fri Nov 19 00:39:51 2004
+++ root/INSTALL.TXT Thu Dec 16 17:36:25 2004
@@ -1,36 +1,39 @@
+#############################################################################################################
+The notes below apply to the UFFI port of Cells-gtk done by Ken Tilton. (Actually I have forked UFFI and
+call it Hello-C, but the idea is the same: portable FFI.)
+
+For the original version by Vasilis Margioulas, which uses native CLisp FFI to
+good advantage, grab this:
+
+ http://common-lisp.net/cgi-bin/viewcvs.cgi/cells-gtk/clisp-cgtk/clisp-cgtk.tar.gz?tarball=1&cvsroot=cells-gtk
+
+...and follow the INSTALL.TXT in that.
+
+##############################################################################################################
+
Dependencies:
Utils-kt: http://common-lisp.net/cgi-bin/viewcvs.cgi/cell-cultures/utils-kt/utils-kt.tar.gz?tarball=1&cvsroot=cells
+Hello-C: http://common-lisp.net/cgi-bin/viewcvs.cgi/cell-cultures/hello-c/hello-c.tar.gz?tarball=1&cvsroot=cells
Cells: http://common-lisp.net/cgi-bin/viewcvs.cgi/cell-cultures/cells/cells.tar.gz?tarball=1&cvsroot=cells
On windows install
Gtk: http://prdownloads.sourceforge.net/gimp-win/gtk%2B-2.4.10-20041001-setup.zip?download
-[kenny says: I had to add the gtk libs to my path variable:
+Add the gtk libs to your PATH variable:
Start>Settings>Control Panel>System>Advanced>Environment Variables>
Then select PATH and hit "Edit". Append to existing value:
"C:\Program Files\Common Files\GTK\2.0\bin"; ..prior values...
-// eokenny]
-
-Edit load.lisp and adjust the paths.
-
-CL> (load "load.lisp")
-
-For a sample application
-
-CL> (cells-gtk:start-app 'test-gtk::test-gtk)
-[kenny says: I added to load.lisp a defun of GTK-DEMO which does the above
-//eokenny]
+Edit load.lisp and follow the instructions there. No, you cannot just load it.
-Note: On windows under emacs with slime, gtk window dont popups. You must start the application from a dos prompt.
+Note: On windows under emacs with slime, the gtk window does not popup. You must start the application from a dos prompt.
Tested on:
- Windows xp with gtk 2.4.10 and clisp 2.33
- Linux (fedora 2) with clisp 2.33
+ Windows xp with gtk 2.4.10 and clisp 2.33, using AllegroCL 6.2 Enterprise and Lispworks 4.3 Personal
Known bugs:
On Windows: Clisp crash if
Index: root/load.lisp
diff -u root/load.lisp:1.3 root/load.lisp:1.4
--- root/load.lisp:1.3 Tue Dec 14 05:02:12 2004
+++ root/load.lisp Thu Dec 16 17:36:25 2004
@@ -1,14 +1,29 @@
(in-package :cl-user)
+#| Step One: Get ASDF into the game.
+
+ Obviously not necessary if you always have that
+ loaded. Note that you will have to adjust the pathname to point to where you
+ have ASDF.lisp.
+
+|#
+
#-asdf
-(eval-when (compile load eval)
- #+lispworks
- (setq *HANDLE-EXISTING-DEFPACKAGE* '(:modify))
+(eval-when (compile load eval)
(load (make-pathname :directory '(:absolute "00" "root")
:name "asdf" :type "lisp")))
-(progn ;; setup
+#| Step Two: Tell ASDF where to find stuff
+
+ Again, adjust pathnames to match the locations of the various bits of source
+
+|#
+
+(progn
+ #+lispworks
+ (setq *HANDLE-EXISTING-DEFPACKAGE* '(:modify))
+
(push (make-pathname :directory '(:absolute "cell-cultures" "utils-kt"))
asdf:*central-registry*)
@@ -36,13 +51,22 @@
*cells-gtk-root*)
asdf:*central-registry*))
-(Asdf:operate 'asdf:load-op :utils-kt :force nil)
-(Asdf:operate 'asdf:load-op :cells :force nil)
-(Asdf:operate 'asdf:load-op :hello-c :force nil)
-(Asdf:operate 'asdf:load-op :gtk-ffi :force t)
-(Asdf:operate 'asdf:load-op :cells-gtk :force nil)
+#| Step 3: Compile and load via ASDF
+
+; these are handy when one is first working up to getting things to build at all
+; but the "test-gtk" ASDF has dependencies which will load everything else, so
+; you can just execute that.
+;
+;(Asdf:operate 'asdf:load-op :utils-kt :force nil)
+;(Asdf:operate 'asdf:load-op :cells :force nil)
+;(Asdf:operate 'asdf:load-op :hello-c :force nil)
+;(Asdf:operate 'asdf:load-op :gtk-ffi :force t)
+;(Asdf:operate 'asdf:load-op :cells-gtk :force nil)
+|#
+
(Asdf:operate 'asdf:load-op :test-gtk :force nil)
-#+test
+#+Step-4:
+
(test-gtk::gtk-demo)
More information about the Cells-gtk-cvs
mailing list