Do I have to take steps to install tcltk? I don't recall having to do
that under Windows, but perhaps the one-click installer did that for
me. If I need to do this, a pointer to a web page that explains how
would be much appreciated.
--
R. Mark Volkmann
Partner, Object Computing, Inc.
ruby does not replace tcl or tk. It requires the underlying libraries
provided
by those packages.
> Do I have to take steps to install tcltk?
Yes. see ruby-1.8.4/ext/tk/README.tcltklib
I don't recall having to do
> that under Windows
perhaps has a library/dll
best regards,
Gerald
I had the same problem. Hard to find a solution on the web, until I
look into my own ruby source tree:
http://santanatechnotes.blogspot.com/2005/12/ruby-and-tk-on-solaris.html
Basically:
# cd ext/tcltklib
# ruby extconf.rb --with-tcl-include=/usr/sfw/include
# make && make install
That was for Solaris, but will work on Linux (just change the path to
your Tcl/Tk headers and libraries). Don't forget to read the README
file.
>
> --
> R. Mark Volkmann
> Partner, Object Computing, Inc.
>
>
--
Gerardo Santana
"Between individuals, as between nations, respect for the rights of
others is peace" - Don Benito Juárez
http://santanatechnotes.blogspot.com/
On my system, ubuntu, the shared library is /usr/lib/libtcl8.4.a, and
the headers are in /usr/include/tcl8.4
At then end of the output of extconf.rb says it couldn't find some
files. One of them in tcl.h, look for it.
1) Download tcl8.4.12-src.tar.gz and tk8.4.12-src.tar.gz
http://www.tcl.tk/software/tcltk/downloadnow84.html
2) Unzip and untar them into /opt/TclTk.
3) ruby extconf.rb \
--with-tcl-include=/opt/TclTk/tcl8.4.12/generic \
--with-tk-include=/opt/TclTk/tk8.4.12/generic
4) make
5) make install
Extracting the sources you get the header files, yes, but not the
libraries. But still your post implies that somehow extconf.rb found
the libraries, otherwise you wouldn't be able to build the tcltklib
extension.
I suppose your Linux distribution has the Tcl/Tk libraries already
installed but not the header files. These header files are located in
a so called development package or -devel I think.