Build Tcl/Tk on IRIX

Published

I finally succeeded in compiling the latest Tcl/Tk version 8.6.18 and several Tcl extensions using my build framework BAWT.

To be able to run the binaries on my Indy and my virtual Indy's using MAME and the Irresponsible Rust IRIX Simulator I decided to use MIPS3 / n32 mode.

The build process involves the following steps:

Install MipsPro C/C++ 7.4

To install MipsPro C/C++ 7.4, the following CDs or ISO images are needed:

MIPSpro C Compiler 7.4.iso
Compiler Execution Environment 7.4.iso
IRIX Development Foundation 1.3.iso
MIPSpro C++ Compiler 7.4.iso

I did not use real CDs or ISO images, but downloaded the needed tar files from jrra.zone and copied them onto my NFS server. After untaring the files, I used the Software Manager to install the packages via NFS.

Note:
There is no need for MipsPro licenses, as Tcl/Tk is compiled using gcc and we only use the advanced header files of the MipsPro distribution.
Install Nekoware tools

Install the following tardists from the MIPS3 Nekoware distribution:

cairo-1.4.12        (needed for tkpath)
gcc-3.4.6           (needed for BAWT)
make-3.80           (needed for BAWT)
pkg-config-0.21     (needed for tkpath)
tar-1.15.1          (needed for SetupTcl)
unzip-5.51          (needed for BAWT)
zip-2.3.1           (needed for BAWT)

As the above mentioned packages depend on other packages, you need to have the following tardist files available for installation:

neko_cairo-1.4.12-mips3.tardist
neko_expat-1.95.8-mips3.tardist
neko_fontconfig-2.3.2-mips3.tardist
neko_freetype2-2.1.10-mips3.tardist
neko_gcc-3.4.6.tardist
neko_gettext-0.14.1-mips3.tardist
neko_glib-1.2.10-mips3.tardist
neko_glitz-0.5.6-mips3.tardist
neko_gtk+-1.2.10-mips3.tardist
neko_libiconv-1.11_mips3.tardist
neko_libpixman-0.1.6-mips3.tardist
neko_libpng-1.2.8-mips3.tardist
neko_libxrender-0.8.4-mips3.tardist
neko_make-3.80-mips3.tardist
neko_ncurses-5.4-mips3.tardist
neko_pkgconfig-0.21-mips3.tardist
neko_render-0.8-mips3.tardist
neko_tar-1.15.1-mips3.tardist
neko_unzip-5.51-mips3.tardist
neko_zip-2.3.1-mips3.tardist
neko_zlib-1.2.3-r1-mips3.tardist

These packages are available as tar file BawtNekoware3.tar on the SgiTcl download page.

Note:
The complete Nekoware distribution is available on archive.org (~ 20 GB).

After extraction of that file, the nekoware-mips3 tardist files are located in directory pub/downloads/Nekoware/nekoware-mips3/current

Build Tcl/Tk and extensions
  • Download the IRIX specific BAWT distribution.
  • Extract BAWT-Framework BawtIrix-3.3.0.tar in a directory of choice, ex. ~opt/Bawt
  • Open shell window, go into created directory ~opt/Bawt/Bawt-3.3.0 and execute:
    chmod u+x Build-IRIX.sh
    chmod u+x tclkit-IRIX32-mips
  • Create Tcl/Tk distribution for IRIX:
    ./Build-IRIX.sh update
Note:
The IRIX specific BAWT distribution currently contains Tcl/Tk and packages I'm involved. See the related links page for information about these packages.
Binary distribution

A pre-built Tcl/Tk distribution is available on the SgiTcl download page. If extracting the distribution into ex. /opt, then you have to extend the following environment variables:

PATH            /opt/Tcl/bin
LD_LIBRARY_PATH /opt/Tcl/lib
Screenshots

Tcl3D Intro

Tcl3D Demo

BawtLogViewer

poImgviewBawtLogViewer