This article is from a FAQ concerning SCO operating systems. While some of the information may be applicable to any OS, or any Unix or Linux OS, it may be specific to SCO Xenix, Open There is lots of Linux, Mac OS X and general Unix info elsewhere on this site: Search this site is the best way to find anything.
Ancient OSes sometimes left things out:
If you have free OpenServer, you already have a license to install the development system; the Web page on which you license free OpenServer gave you several keys and codes, including one to license that. If you are using a commercial version, you may be able to use the free GNU compiler, or you will have to purchase the development system.
Xenix, Unix and ODT do not ship with program development tools. These are unbundled into packages known as Development Systems. The rationale behind this is that many users of SCO systems are using off-the-shelf software and never need to write a line of C code. If everyone was forced to buy the development system whether they needed it or not, some of the customers might get upset. There is a periodic flame war about this; this is not the place to discuss it.
You can buy the Development System for any of the three environments listed above as a separate package including the compiler, header files, libraries, lex, yacc, linker, and other tools. Additionally, development systems are available for other packages such as TCP/IP; these development systems add the include files, libraries, etc. required to program for the package in question. The ODT Dev Sys includes the development tools for all of the other goodies (e.g. TCP/IP, X) that are bundled into ODT. Since OSR5 generally bundles the various runtime packages (e.g. TCP/IP) with the OS, it also bundles the same development packages, so there are not the same development system add-ons in OSR5 that there were in previous versions.
Watch out for the "UDK" Dev Sys. As this post explains:
Do not use the CD labelled in "UnixWare and OpenServer Development Kit" because the code will end up in /udk/usr/ccs/bin. Use the CD labelled in small print "SCO OpenServer Development System".
There are versions of gcc (the Gnu C Compiler) freely available for SCO systems. On older SCO operating systems, however, you will probably need the development system, as the header and library files you need are part of it and not part of the operating system itself. This problem has been alleviated in OpenServer Release 5, as the headers and libraries are now shipped as part of the base operating system and are available even if you have not purchased the development system.
You should understand that installing gcc does NOT necessarily give you trouble free compilation of anything you download off the net. The problem is that makefiles, if they are aware of SCO at all, will often assume that you are using "cc". Linking "gcc" to "cc" won't help- in fact, it may make things worse. Compiler flags for "cc" are very different from those of "gcc"; if the make file sees "cc" in a SCO environment, it may use "cc" flags, and those often are very, very wrong for gcc. If it doesn't see "cc" at all, it may give up, or make totally incorrect library choices.
The "lxrun" package allows you to run many Linux programs on OSR5 and Unixware; you could always compile on a Linux machine.
Some of the better written software uses auto-configuration software to generate makefiles. This software examines your environment, does test compiles of program snippets to determine what libraries are available, and makes other tests that should create a working Makefile. These have a good chance of compiling properly, but in many cases, you will still have to hand-edit the Makefile yourself, and ( depending on its complexity) you may need a very good understanding of compiler options, library contents, etc.
I wish somebody would write an article about this.
To install the headers and libraries, insert your original OS CDROM, run custom, choose Install New and install the "SCO OpenServer Linker and Application Development Libraries" - note that these are NOT part of the Development System or Enterprise choices; you don't have to expand any packages, this is right at the top level. The instructions at the Skunkware site can throw you off because they tell you to look for "Application Development Libraries and Linker", which is not what is says on the CD's.
gcc sources and binaries for OpenServer Release 5 only are on the free Skunkware family of CD-ROMs; for more info, see https://www.sco.com/skunkware/faq.html or read the section below entitled "What is Skunkware?"
Sam G. notes (Jan 2005)
just wanted you to know as follows: in 5.07 there is a separate CD that says 'development system' that includesthe 'standard' development system and also the Java Development tools.if you install the DS from there there is no option to defray, nor is therean option for just the 'headers and linker'. -However - the original OS disk - also contains the Deveolopment pkg as well asjust the 'headers & linkers only' (forgot what that pkg is called) - but on this 'Development' option the 'defer' option does exist.
Got something to add? Send me email.