APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

What do I need to compile programs? (SCO Unix)

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:

The native OSR5 devsys is installed from the main OSR5 operating system CD (the label even says so, in medium-small print). The UDK comes on its own separate CD with big huge letters, to make sure you install the wrong devsys, which you've apparently done.

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.   

See also https://www.sco.com/developers/products/devkits.html

Got something to add? Send me email.

(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> What do I need to compile programs? (SCO Unix)

Tue Feb 19 11:04:16 2008: 3667   NicoKadelGarcia

I can't find this CD without the "Unixware" on the label in my old mediapacks, which admittedly seems to be the 5.0.6j installation kit.

What I *did* find whas that the base installation CD includes development toolkits on it, which are not installed as part of the standard server install, and that installing them manually with the whole "SCO Openserver Development System"

Tue Feb 19 13:03:02 2008: 3669   TonyLawrence

Yes, that's always been the case. You can also just install the headers and use GNU - other articles here cover that (see the FAQ).

Though why you are still bothering with SCO is another question entirely :-)

Sat May 17 03:29:59 2008: 4199   anonymous

FYI I wrote a step by step guide for setting up a 5.0.6 with a working GNU GCC compiler environment (gnutools 5.0.7Kj) here:


I know it's rather simple, but the questions get asked repeatedly and no 1 article seems to have basic instructions that would be obvious to people new to SCO.


Printer Friendly Version

Have you tried Searching this site?

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us

Printer Friendly Version

The people I distrust most are those who want to improve our lives but have only one course of action in mind. (Frank Herbert)




Unix/Linux Consultants

Skills Tests

Unix/Linux Book Reviews

My Unix/Linux Troubleshooting Book

This site runs on Linode