Chapter 3. Compilers and other developer tools

Table of Contents
3.1. About the GNU Tools
3.2. C/C++ Compilers and Tools
3.3. Linker, Assembler, and Object File Manipulation Tools
3.4. Debuggers and Code Analysis Tools
3.5. Tools for Libraries and Archives
3.6. Perl
3.7. Java
3.8. Fortran
3.9. Other tools

The Caldera OpenLinux Workstation includes many tools for developers. These are summarized in this chapter. More information about these is available through the man and info commands, the DocView, KHelpCenter, and KDevelop documentation servers/browsers. Additional information is available at various web pages and news groups.

Additional tools are available from third party vendors. See the Caldera home page for information about these.

3.1. About the GNU Tools

The GNU toolchain is a set of compilers and development tools that are the foundation of the Linux development environment and are also supported on many other platforms. These and other handy development tools are available at the website. Built versions of many of these tools are included on the Caldera OpenLinux Workstation, either in the main development system or on the "contrib" CD.

All source code for GNU tools is available; anyone can download, build, and use them for free. You can also download the current "Top of Tree" and make modifications to the tools that are needed. If you fix a bug or add a significant feature, you should contribute it back to the community, although this is not required if you do not distribute your altered software. If you distribute such work, you are actually required to distribute your source and contribute it back to thw owner of the original software. See for more information about participating in this work; always consult with your own legal authorities about your specific rights and obligations for any work you are doing.

Several different license types can be used for code that is contributed to the Open Source community. See for an overview of the terms and restrictions of the different licenses.

Note that you are not required to provide the source for an application that is created using the GNU toolchain. You must, however, carefully check the license type of all libraries that are used in the code: libraries that are covered by a GPL can only be used in free software; libraries that are covered by an LGPL can be used in free or proprietary software. The web page provides more information about the terms of the different licenses; when in doubt, consult your legal experts.

Sometimes "free software" is confused with "open sourced software." See for a description of free software.

This is a list of some of the most popular tools that are included on the Caldera OpenLinux Workstation. More information about each is provided on the system in info files and manpages.

3.2. C/C++ Compilers and Tools

The C compiler provided for the OpenLinux Workstation is the same compiler used to build the operating system.


GNU C compiler, Release 2.95.2


GNU C++ compiler, Release 2.95.2

For details about the current C compilation tools, see the /usr/share/doc/packages/gcc-2.95.2/NEWS file. Note that EGCS is essentially the predecessor of GCC 2.95.2.

3.3. Linker, Assembler, and Object File Manipulation Tools


GNU assembler


Preprocessor for the GNU assembler


C preprocessor interface to make


C++ documentation extraction and generation tool


GNU linker/loader


Manage compilation and dependencies for an application


Convert relocatable object file into a NetWare Loadable Module


List symbols from an object file


Copy an object file


Display information from object files


Display info about ELF format object files


List section sizes and total size of an object file


Discard symbols from object files

3.4. Debuggers and Code Analysis Tools


Translate program addresses into file names and line numbers


Program profiler


Interactively examine a C program


Application debugger


Extract all kernel symbols for debugging


Trace library calls


Make a debuggable executable target for imake


Trace system calls and signals


Print printable command sequences from a non-text file

Graphical front ends are provided for gdb:


provides graphical visualization of data structures and their relationships and 3D data visualization capabilities for arrays.

KDbg, KDevelop embedded debugger

KDevelop includes its own embedded debugger that allows you to debug programs in the editor and is especially useful for C++ programs. KDevelop can also be configured to call one of the other gdb frontends or another debugger of your choice

3.5. Tools for Libraries and Archives


Create, modify, and extract from a library archive


Manage shared libraries


Generate index for an archive

3.6. Perl

Perl is an interpreted, high-level programming language. It is a popular scripting language for web applications, especially CGI programs. Perl can also be used as a rapid prototyping language, a "glue" language that enables different systems to work well together, and for automating system administration tasks. The following Perl commands are included on the OpenLinux Workstation:


Perl interpreter


Frontend for Perl compiler

man perlcompile 

Introduction to the Perl Compiler-Translator


Look up documentation about Perl language and installed Perl modules


Compiler to convert Perl XS code into C code

See for additional information.

3.7. Java

The Java 2 JDK version 1.3 with plug-in support is included on the Caldera OpenLinux Workstation. JDK is a development environment for building applications, applets, and components that can be deployed on the Java platform. It includes tools useful for developing and testing programs written in Java and for running Java applications. Commercial IDEs for Java development are provided in the commercial version of the OpenLinux Workstation or can be purchased separately.

Java is distributed in two packages: The JRE (Java Runtime Environment) contains the Virtual Machine needed to run Java applications; the JDK (Java Development Kit) contains the files needed to build Java applications. The JRE can be installed without the JDK but the JDK cannot be installed without the JRE.

Most of the Java commands have manual pages or embedded help. If you cannot find a manual page for a command, run the command from a shell prompt and look at the help information that is provided.


Java applet viewer


JAR (Java Archive) conflict detection utility


Invoke the JVM for standalone applications


Java compiler


C header and stub file generator"


Java class file disassembler


JAR (Java ARchive) signing and verification tool


Java API documentation generator


Java debugger


Key and certificate management tool


Convert files that contain character encoding other than Latin-1 or Unicode-encoded characters to the character sets that java(1) can process.

policytool, rmic 

Java RMI stub compiler


RMI activation system daemon


Java remote object registry


Return serial version for one or more classes in a form suitable for copying into an evolving class.


Java IDL name server starter script

Full information about Java is available at the webpage.

3.8. Fortran

The OpenLinux Workstation includes the GNU Fortran-77 compiler, g77. A number of other Fortran compilers are available from third parties.

3.9. Other tools


Enhaced awk


RPC protocol compiler


Python object-oriented interpreter