Introducing the tgcware software distribution for Solaris

This is a collection of software built and packaged in SVR4 format for Solaris.
The aim is to get a good base selection of software available for older Solaris releases with particular focus on providing good gcc packages.

The current target releases are Solaris 2.6, 7, 8 and 9

I will attempt to address security issues in the packages as I become aware of them but I will not guarantee updated fixed packages nor can I take any responsibility for any problems this may cause.

Installing the software

Installing a package simply requires it to be unpacked with gunzip and installed using pkgadd -d.
If you do not have a suitable gzip then use the tgcware gzip package, it has no dependencies and has been left uncompressed.

For libgcc_s, libstdc++ and other gcc target libraries please install the latest available package and ignore whatever version a specific package requires. Do not get hung up on matching gcc and gcc target library versions, they do not need to match as long as the version installed is higher than the one required. The old versions of the target libraries are merely available for completeness.

I try to make sure that the packages all have the right dependencies on other packages.
Generally dependencies are auto generated but from time to time they might need tweaking.
Because of the way Solaris package dependencies work (especially versioned deps) it's quite hard to get them right. In effect you might have to ignore dependencies from time to time. Generally as long as you do not install an older version of a package than the one required things should be fine.

If you find yourself having to override what seems to be a wrong dependency please let me know so I might fix it if possible.

For packages with a reuseable library component there will usually be a main package containing binaries, shared objects, documentation etc. and a -devel package containing the headers, man pages etc. applicable for developing with the library.

The layout will differ for other classes of software, one such example is gcc.

About compatibility

All buildhosts have been patched with what is available from Oracle Support (previously SunSolve) up to pre-vintage patch support.
If you cannot patch your system (ie. no access to patches) then I recommend using a tgcware package built for a previous Solaris release instead. If all fails use the buildsystem and buildscripts to build packages that match your installation.

For Solaris 8 and 9 SPARC the packages are built for UltraSPARC cpus and will not run on sun4m class machines (ie. SS20). Solaris 2.6 and 7 SPARC packages are built for SPARCv7 and will run on most machines (ie. SS1).

For SPARC there are a few packages which have also been built for the sparc64-sun-solaris2.<x> target and have sparc64 in the filename, these will only run on UltraSPARC cpus or better.

For Solaris 8 and 9 x86 the packages are built for the Intel Pentium cpu and will not run on i386 and i486 class cpus. Solaris 2.6 packages will run on i386 class cpus while Solaris 7 packages are built for the i486 cpu.

Downloads

Solaris 9/sparc (requires UltraSPARC cpu)
Solaris 8/sparc (requires UltraSPARC cpu)
Solaris 7/sparc (requires SPARCv7 cpu or better)
Solaris 2.6/sparc (requires SPARCv7 cpu or better)
Solaris 9/x86 (requires i586 cpu or better)
Solaris 8/x86 (requires i586 cpu or better)
Solaris 2.7/x86 (requires i486 cpu or better)
Solaris 2.6/x86 (requires i386 cpu or better)

Building the software

I always build with NLS support where possible (with a few exceptions).
I prefer GNU iconv over native iconv.
All software is built to install in /usr/tgcware though init scripts go to /etc/init.d.
All binaries and shared libraries have been stripped.
All binaries and shared libraries are linked -R (rpath) where necessary to make sure that the right shared libraries are used at runtime.

All packages are built using the tgcware buildsystem.
For Solaris 2.6 the tgcware v1 for Solaris build scripts are used.
For Solaris 7, 8 and 9 the tgcware v2 for Solaris build scripts are used.

Platform specific notes

Solaris 9/sparc
Packages are built in a Solaris 9 zone running on a SunFire 880 with 4xUSIII 900Mhz cpus and 8192Mb RAM.
See showrev -p output here

Solaris 8/sparc
Packages are built in a Solaris 8 zone running on a SunFire 880 with 4xUSIII 900Mhz cpus and 8192Mb RAM.
See showrev -p output here

Solaris 7/sparc
Packages are built on an Enterprise 5500 with 4xUSII 336Mhz cpus and 2048Mb RAM.
See showrev -p output here

Solaris 2.6/sparc
Packages are built on an Enterprise 250 with 2xUSII 400Mhz cpus and 512Mb RAM.
See showrev -p output here

Solaris 9/x86
Packages are built in a virtual machine configured with 512Mb RAM running on an ESXi 6.0 host (i7-2600 cpu).
See showrev -p output here

Solaris 8/x86
Packages are built in a virtual machine configured with 512Mb RAM running on an ESXi 6.0 host (i7-2600 cpu).
See showrev -p output here

Solaris 7/x86
Packages are built in a virtual machine configured with 256Mb RAM running on an ESXi 6.0 host (i7-2600 cpu).
See showrev -p output here

Solaris 2.6/x86
Packages are built in a virtual machine configured with 256Mb RAM running on an ESXi 6.0 host (i7-2600 cpu).
See showrev -p output here


Last updated 2017-04-20 by Tom G. Christensen (swpkg@jupiterrise.com)