[CM] Re: CM + GTK2

Rick Taube taube@uiuc.edu
Mon, 10 Oct 2005 09:12:43 -0500


Hi Adam, you might be able to point cm's GTK FFI to your GTK libs by  
defining the variable cl-user::*gtk-libdir* to point to where your libs  
are stored before the file before you load cm:
	(defparameter cl-user::*gtk-libdir* "/path/to/gtk2/libs/")
      (load "/path/to/cm/src/cm.lisp")
But this assumes your GTK lib names are the same as what  
gtkffi-cmusbcl.lisp expects. otherwise you will have to edit the file  
and change the lib linking code.

on the other hand, if you are thinking of switching to fedora core  
anyway, consider just installing the latest Planet CCRMA distro -- I  
installed it without any glitches and its been a very stable  
environment -- all the music apps are already there and they work.

On Oct 10, 2005, at 1:13 AM, Adam Chennells wrote:

> Rick,
>
> Am trying to re-build latest CM.   [My first time from CVS].
> I have Cmucl on Mandrake 10 linux. Older CM works.
>
> It seems it can't find GTK2.
> But I believe I have a GTK2 on my system, see
> at the very bottom below.
>
> I'm hesitant to launch into an upgrade or install of the
> latest GTK2, for fear it would break many existing things.
>
> Perhaps I need only  lambda-to-GTK  installed?
> Or point install just the  libgtk-x11-2.0  source or
> libraries ?
>
> Or else, perhaps I can "upgrade" my GTK from
> the Mandrake site - painlessly I hope.
> The option of manually removing GTK and installing
> GTK2 doesn't look attractive to me just at present.
>
> Do you have any advice at this stage ?
>
> 	best,	Adam.
>
>
>
> OT.  Am considering switching to RH Fedora 3 or 4,
> so maybe that would ease the upgrade of GTK2.0.
> And I hope it will get Midishare running on a newer
> kernel too.  So perhaps I should fast-track this?
>
>
>
>
> [ahc@localhost bin]$ ./cm.sh
>
> ; Installation directory: "/home/ahc/cmcvs/cm/"
> ; Compiling "src/gui/gtkffi-cmusbcl.lisp"
>
> Error in function (FLET LIBPATH
>                     ):
>    Library "/usr/lib/libgtk-x11-2.0.so" not found. Either GTK is not  
> installed
> or else cl-user:*gtk-libdir* needs to be set to the directory  
> containing GTK
> on your machine.
>    [Condition of type SIMPLE-ERROR]
>
> Restarts:
>   0: [CONTINUE] Return NIL from load of
> "/home/ahc/cmcvs/cm/bin/./../src/cm.lisp".
>   1: [ABORT   ] Skip remaining initializations.
>
> Debug  (type H for help)
>
> ((FLET LIBPATH
>    )
>  "libgtk-x11-2.0")
> Source: (ERROR
>          "Library ~S not found. Either GTK is not installed or else
> cl-user:*gtk-libdir* needs to be set to the directory containing GTK  
> on your
> machine."
>          P)
> 0] 1
>
> ; Compilation unit aborted.
>
>
>
>
> [ahc@localhost ahc]$ find /usr/lib/gt
> gtk      gtk-2.0
> [ahc@localhost ahc]$ dir /usr/lib/gtk/
> themes
> [ahc@localhost ahc]$ dir /usr/lib/gtk/themes/
> engines
> [ahc@localhost ahc]$ dir /usr/lib/gtk/themes/engines/
> libeazel-engine.la  libmetal.so   libpixmap.so     libredmond95.so
> libwonderland.so
> libeazel-engine.so  libnotif.la   libraleigh.la    libthinice.la
> libgalaxy.so        libnotif.so   libraleigh.so    libthinice.so
> libmetal.la         libpixmap.la  libredmond95.la  libwonderland.la
> [ahc@localhost ahc]$ dir /usr/lib/gtk-2.0/
> 2.2.0  modules
> [ahc@localhost ahc]$ dir /usr/lib/gtk-2.0/2.2.0/
> engines  immodules  loaders
> [ahc@localhost ahc]$ dir /usr/lib/gtk-2.0/modules/
> libferret.so  libgail.so
> [ahc@localhost ahc]$
>
>
>
>
> [ find /usr/ -name "gtk*" ]
>
> [ ... ]
> /usr/share/gtkrc/gtkrc.zh_TW
> /usr/share/gimp/1.2/help/C/dialogs/color_selectors/gtk.html
> /usr/share/mcc/themes/default/gtkrc
> /usr/share/dia/python/gtkcons.py
> /usr/bin/gtk-query-immodules-2.0
> /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi/Gtk2/Install/ 
> gtk2perl-autogen.h
> /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi/Gtk2/Install/ 
> gtk.typemap
> /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi/Gtk2/Install/ 
> gtk2perl.typemap
> /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi/Gtk2/Install/ 
> gtk2perl.h
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-0.99.typemap
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-0.99.defs
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-1.0.defs
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-1.1.1.defs
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-1.1.3.defs
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-1.1.4.defs
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-1.1.6.defs
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-1.1.defs
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-1.2.defs
> /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi/Gtk/Install/ 
> gtk-1.2.typemap
> /usr/lib/python2.3/site-packages/gtk-2.0
> /usr/lib/python2.3/site-packages/gtk-2.0/gtk
> /usr/lib/gtk-2.0
> /usr/lib/libDrakX/interactive/gtk.pm
> /usr/lib/gtk
>