Table of contents:
Note that sitting beside this README file is a TUTORIAL file which should contain some useful examples of how to get started actually using the program.
When the system is built, the object files go into a hierarchy within build/obj/ that parallels src/. That is, a source file src/foo/bar.cc will be compiled to build/obj/foo/bar.o.
This software requires these development packages:
The following additional packages are optional. The configure script should generally be able to detect whether you have them installed or not and set up the Makefile appropriately.
The following packages are optional, but are used in some of the scripts that use the groovx software.
Note that the itcl+itk configure script expects to find the tcl+tk sources sitting in the location where you built them... so, don't remove the tcl+tk sources until after you build and install itcl+itk.
cd /path/to/source
tar xfz itcl3.2.1_src.tgz
cd itcl3.2.1
./configure --prefix=/path/to/install
make
make install
Note, you might need to do this:
export SHLIB_LDFLAGS=-L/path/to/install/lib
before running ./configure so that the configuration script looks for e.g. libtclstub8.x.a in the install directory rather than in the tcl's apparent build directory.
Again, note that iwidgets expects to still be able to find the source code from the itcl/itk build, so don't remove the itcl+itk sources until after you've configured and installed iwidgets.
cd /path/to/source
tar xfz iwidgets4.0.1.tar.gz
cd iwidgets4.0.1
./configure --prefix=/path/to/install \
--with-itcl=/path/to/source/itcl3.2.1 \
--with-itk=/path/to/source/itcl3.2.1
Then, there is no need to do "make" for iwidgets; just do "make install":
make install
Notes for doing a custom Tcl/Tk build for Aqua (i.e. not for X11 on Mac OS X).
Used the following Makefile fragment for Tcl (in pathtosrc/tcl/macosx/Makefile):
DESTDIR ?=
INSTALL_ROOT ?= ${DESTDIR}
BUILD_DIR ?= ${CURDIR}/../../build
SYMROOT ?= ${BUILD_DIR}/${PROJECT}
OBJROOT ?= ${SYMROOT}
EXTRA_CONFIGURE_ARGS ?=
EXTRA_MAKE_ARGS ?=
INSTALL_PATH ?= ${HOME}/Library/Frameworks
PREFIX ?= ${HOME}/local/tcl8.5a1-aqua
BINDIR ?= ${PREFIX}/bin
MANDIR ?= ${PREFIX}/man
Used the following Makefile fragment for Tk (in pathtosrc/tk/macosx/Makefile):
DESTDIR ?=
INSTALL_ROOT ?= ${DESTDIR}
BUILD_DIR ?= ${CURDIR}/../../build
SYMROOT ?= ${BUILD_DIR}/${PROJECT}
OBJROOT ?= ${SYMROOT}
EXTRA_MAKE_ARGS ?=
INSTALL_PATH ?= ${HOME}/Library/Frameworks
APPLICATION_INSTALL_PATH ?= ${HOME}/Applications/Utilities
PREFIX ?= ${HOME}/local/tcl8.5a1-aqua
BINDIR ?= ${PREFIX}/bin
TCL_FRAMEWORK_DIR ?= ${BUILD_DIR}/tcl
TCLSH_DIR ?= ${TCL_FRAMEWORK_DIR}
Problems:
ln -s ~/Applications/Utilities/Wish\ Shell.app \
~/Library/Frameworks/Tk.framework/Versions/8.5/Resources/
./configure
To see a description of available configuration options, do:
./configure --help
Some important configuration options:
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/path/to/install"
Note that for Mac OS X, you can build either for X11 (if you are running an X server such as OroborosX on your OSX box) or for Aqua (OSX's native windowing system). By default the configure script will setup for X11, but you can pass the --enable-aqua option to tell it to set up for Aqua instead.
Earlier versions of the software have been built successfully under SGI's IRIX6 and HP's HPUX 10.x, but these configurations have not been tested recently.
The software requires a reasonably C++ std-compliant compiler. Compilers that have worked successfully in the past include:
but note that the older compilers (especially g++ 2.95.x, HP aCC, and SGI MIPSpro) haven't been tested lately so it's likely that a few things will not work out-of-the-box with those compilers.
Rob Peters
rjpeters at usc dot edu
ilab.usc.edu/rjpeters/
ilab.usc.edu/rjpeters/groovx/