From: Lszl F. [email protected]
Subject: Re: Tk and Tile with Tk8.5
Date: Sun, 3 Apr 2011 06:38:47 +0900
Message-ID: [email protected]
Please check the result of ‘ruby -r tk -e “p Tk::TK_PATCHLEVEL”’.
If it shows 8.4.x, your tcltklib.so uses libraries of Tcl/Tk8.4.
And indeed it is:
$ ruby -r tk -e “p Tk::TK_PATCHLEVEL”
“8.4.19”
Are there tk-tile package for Tcl/Tk8.4 on Ubuntu 10.10 ?
If it exists, please try to install the package.
or re-compile your ruby’s tcltklib.so with Tcl/Tk8.5.
Back to the “I’m not a source code compiler type”, can you give me some
hint, how to do this? (not the ‘make install’ entry, but can it be
independently recompiled from source or only together with other files
or I need to recompile the whole Ruby package. And most importantly,
what are the parameters that make it link to Tk8.5?)
First of all, I’m not familiar with Debian packages.
So, I can’t tell you how to create your own Ruby/Tk package with
Tcl/Tk8.5.
In general, extconf.rb of tcltklib (/ext/tk/extconf.rb)
searches automatically the latest version of Tcl/Tk on the system.
If you are luky ;-), you’ll be able to make a new ruby by
“cd ; ./configure; make”.
Of course, it requires Tcl/Tk dev packages.
Please check the messages of make steps.
tcltklib’s extconf.rb shows the status of searching Tcl/Tk libraries.
If it shows fail messages, you must give configure options.
Please see <ruby-src-dir/ext/tk/README.tcltklib. It describes
configure options to teach position of Tcl/Tk libs to extconf.rb.
Although there are many combinations of options to match several env,
please try to give --with-tclConfig-file= and
–with-tkConfig-file= at first.
If you have some trouble, please tell me the fail messages and the
position of your Tcl/Tk headers and libraries.
I tried to replace tcltklib.so with your
tcltklib.so-tk8.5.7-ruby192dev_20100313rev26900_i686-linux but that .so
introduced other unsatisfied dependencies (like libstdc++.so.5)
Sorry. It was compiled on an old environment (gcc-3.3).
Even if it is available, I don’t recommnd partial replace of package
files.
It may break the package management system.