--------------------------------------------------------------------- HOW TO INSTALL ON SCO UNIX: Installing on a SCO Unix Rel.3.2 system without the SCO Development System (if you have the SCO Unix SDK, get the gcc distribution from ftp.celestial.com or from the SCO Skunk 2.0 CD) : 1. ftp the following archives to somewhere in your machine (e.g. /usr/tmp) 'gc258sco.tgz' The GNU C Ver.2.5.8 'bu25coff.tgz' The GNU binutils Ver. 2.5 'glc109sc.tgz' The GNU libc Ver.1.09 these are 'tar.gz' files, so you can rename them after ftp'ing if you want -- now the names doesn't break the Messy-DOS 8+3 rule if you want to ftp them first to a such kind of system. 2. You can look the contents of the files first with GNU tar's 'z' option: gtar tvzf gc258sco.tgz | more gtar tvzf bu25coff.tgz | more gtar tvzf glc109sc.tgz | more or if you don't have the GNU tar, gunzip them first : gzip -c -d gc258sco.tgz > gc258sco.tar gzip -c -d bu25coff.tgz > bu25coff.tar gzip -c -d glc109sc.tgz > glc109sco.tar and look then: tar tvf gc258sco.tar | more tar tvf bu25coff.tar | more tar tvf glc109sco.tar | more As you can see, the 'target' type was 'i486-sco3.2v4.2', when first compiled on a SCO Xenix 2.3.3. It didn't care about the 15-character directory names it must create (/usr/local/i486-sco3.2v4.2 and /usr/local/lib/gcc-lib/i486-sco3.2v4.2), just stripped the last '2' from the name. But SCO Unix 3.2.2 seems to be very critical to the names - if the binaries try to find something from '.../i486-sco3.2v4.2', it doesn't find that from '.../i486-sco3.2v4.' as SCO Xenix does... 3. untar them at the root directory ('/'), these make files to '/usr/bin' and '/usr/local' subdirectories. The commands with the GNU tar are as follows: cd / gtar xvzf /usr/tmp/bu25coff.tgz gtar xvzf /usr/tmp/gc258sco.tgz gtar xvzf /usr/tmp/glc109sc.tgz or with the SCO tar tar xvf /usr/tmp/bu25coff.tar tar xvf /usr/tmp/gc258sco.tar tar xvf /usr/tmp/glc109sco.tar If you have SCO Unix 3.2.4, the 'over-14 filename' capable system, change the directory names '/usr/local/i486-sco3.2v4.' and '/usr/local/lib/gcc-lib/i486-sco3.2v4.' to '.../i486-sco3.2v4.2' Then you can take all that file-linked stuff 'cc1', 'cpp', 'ld', 'as' and so on from '/usr/local/bin' and '/usr/local/lib', and leave them only to those official '.../i486-sco3.2v4.2' subdirectories, from where '/usr/local/bin/gcc' (you can change the name to 'sco-gcc' on Linux) tries to find them. If you have SCO Xenix 2.3.[34],, you can also remove the stuff from '/usr/local/bin' and '/usr/local/lib', but cannot put the last '2' to the directory names (it has a 14-char limit too...) 4. check that /usr/local/bin is in your search path... 6. test the compiler & libraries & headers with your programs... 7. report all the bugs (hope there aren't many of them ;-) to : 'karuottu@freenet.hut.fi' When you have sure the gcc-2.5.8 works, and want C++, Objevtive-C and other newer stuff, try the gcc-2.6.3_e, binutils-2.5.2.6 and other newer packages... HOW TO INSTALL ON LINUX OR UNIXWARE: You cannot untar the stuff at the root directory, it overwrites files already at '/usr/bin' !!! Untar these packets in '/tmp' or '/var/tmp' or in some other suitable directory, and move files to their 'official' places: gcc-2.6.3: /usr/local/i386-sco3.2v4./... /usr/local/lib/gcc-lib/i386-sco3.2v4./2.6.3_e/... gcc-2.5.8: /usr/local/i486-sco3.2v4.2/... /usr/local/lib/gcc-lib/i486-sco3.2v4.2/2.5.8/... The executables from './usr/bin' to 'bin', libraries to 'lib' and headers to 'include' of the '/usr/local/i*86-sco3.2v4.*' subdirs... The '*crt*.o' files belong to the 'lib' - subdirectory too... The gcc-2.6.3 is recommended in Linux, the 2.5.8 compiler driver doesn't work in Linux, it cannot use 'cpp' and 'cc1' as childs (you can use the options '-b i486-sco3.2v4.2 -V 2.5.8' with the 2.6.3 'gcc' -- remember to rename this to 'gcc-sco', 'sco-gcc', 'coff-gcc' or what you like... and put it to '/usr/local/bin' or '/usr/bin', so you can start it... Perhaps I make a 'Linux-ready' packages of the compilers, until it these instructions hopefully are enough, and you can always ask somebody, if the problem is where to install the files... Those 'official' directories are STRONGLY RECOMMENDED - if you later decide to install the cross- compilers to DOS/DJGPP, MC6811, 68K etc., it's nice to have all them in good order under '/usr/local' and '/usr/local/lib/gcc-lib'. Enjoy, karuottu@freenet.hut.fi