Red Hat Linux 6.1: The Official Red Hat Linux Reference Guide | ||
---|---|---|
Prev | Appendix A. Red Hat Linux 6.1 Package List | Next |
This section contains packages of interest to programmers. Red Hat Linux comes with a very powerful and rich set of tools for the programmer, so there are several different subsections here.
This section contains a number of packages that make it easier to find bugs in a program.
Gdb is a full featured, command driven debugger. Gdb allows you to trace the execution of programs and examine their internal state at any time. Gdb works for C and C++ compiled with the GNU C compiler gcc.
If you are going to develop C and/or C++ programs and use the GNU gcc compiler, you may want to install gdb to help you debug your programs.
Lslk is a lock file lister. Lslk attempts to list all of the locks on the executing system's local files (i.e., on the active inodes).
Install lslk if you need a utility for listing file locks.
Lsof's name stands for LiSt Open Files, and it does just that. It lists information about files that are open by the processes running on a UNIX system.
Ltrace is a debugging program which runs a specified command until the command exits. While the command is executing, ltrace intercepts and records both the dynamic library calls called by the executed process and the signals received by the executed process. Ltrace can also intercept and print system calls executed by the process.
You should install ltrace if you need a sysadmin tool for tracking the execution of processes.
The strace program intercepts and records the system calls called and received by a running process. Strace can print a record of each system call, its arguments and its return value. Strace is useful for diagnosing problems and debugging, as well as for instructional purposes.
Install strace if you need a tool to track the system calls made and received by a process.
Sysreport is a utility for gathering information about your systems hardware and configuration for diagnostic and debugging. It's purpose is to aid Support Technicians and Developers by getting a "snapshot" of your current systems layout.
Xxgdb is an X Window System graphical interface to the GNU gdb debugger. Xxgdb provides visual feedback and supports a mouse interface for the user who wants to perform debugging tasks like the following: controlling program execution through breakpoints, examining and traversing the function call stack, displaying values of variables and data structures, and browsing source files and functions.
Install the xxgdb package if you'd like to use a graphical interface with the GNU gdb debugger. You'll also need to have the gdb package installed.
This section lists the packages containing various programming languages.
This package includes a compiler that can be used to generated binaries that will run on older Red Hat Linux systems (namely Red Hat Linux 5.2, or glibc 2.0.X based systems). This package includes the C compiler and required compiler libraries for those systems.
This package includes a compiler that can be used to generated binaries that will run on older Red Hat Linux systems (namely Red Hat Linux 5.2, or glibc 2.0.X based systems). This packge includes the C++ compiler and libraries for those older systems.
This package includes a compiler that can be used to generated binaries that will run on older Red Hat Linux systems (namely Red Hat Linux 5.2, or glibc 2.0.X based systems). This packge includes the Fortran 77 compiler and libraries for those older systems.
This package includes a compiler that can be used to generated binaries that will run on older Red Hat Linux systems (namely Red Hat Linux 5.2, or glibc 2.0.X based systems). This packge includes the Objective C compiler and libraries for those older systems.
Cpp (or cccp) is the GNU C-Compatible Compiler Preprocessor. Cpp is a macro processor which is used automatically by the C compiler to transform your program before actual compilation. It is called a macro processor because it allows you to define macros, abbreviations for longer constructs.
The C preprocessor provides four separate functionalities: the inclusion of header files (files of declarations that can be substituted into your program); macro expansion (you can define macros, and the C preprocessor will replace the macros with their definitions throughout the program); conditional compilation (using special preprocessing directives, you can include or exclude parts of the program according to various conditions); and line control (if you use a program to combine or rearrange source files into an intermediate file which is then compiled, you can use line control to inform the compiler about where each source line originated).
You should install this package if you are a C programmer and you use macros.
The egcs package contains the GNU Compiler Collection: cc, gcc and egcs. You'll need this package in order to compile C/C++ code.
This package adds C++ support to the GNU C compiler. It includes support for most of the current C++ specification, including templates and exception handling. It does include the static standard C++ library and C++ header files; the library for dynamically linking programs is available separately.
The egcs-g77 package provides support for compiling Fortran 77 programs with the GNU gcc compiler.
You should install egcs-g77 if you are going to do Fortran development and you would like to use the gcc compiler. You will also need gcc, which is included in the egcs package.
Egcs-objc provides Objective C support for the GNU C compiler (gcc). Mainly used on systems running NeXTSTEP, Objective C is an object-oriented derivative of the C language.
Install egcs-objc if you are going to do Objective C development and you would like to use the gcc compiler. You'll also need gcc, which is included in the egcs package.
Expect is a tcl extension for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect is also useful for testing the named applications. Expect makes it easy for a script to control another program and interact with it.
Install the expect package if you'd like to develop scripts which interact with interactive applications. You'll also need to install the tcl package.
This package installs basic libraries you must have to use GNOME programs that are built with Objective C.
GNOME is the GNU Network Object Model Environment. It's a powerful, pleasing, easy to use and configure environment for your computer.
GUILE (GNU's Ubiquitous Intelligent Language for Extension) is a library implementation of the Scheme programming language, written in C. GUILE provides a machine-independent execution platform that can be linked in as a library during the building of extensible programs.
Install the guile package if you'd like to add extensibility to programs that you are developing.
[incr Tcl] is an object-oriented extension of the Tcl language. It was created to support more structured programming in Tcl. Tcl scripts that grow beyond a few thousand lines become extremely difficult to maintain. This is because the building blocks of vanilla Tcl are procedures and global variables, and all of these building blocks must reside in a single global namespace. There is no support for protection or encapsulation.
[incr Tcl] introduces the notion of objects. Each object is a bag of data with a set of procedures or "methods" that are used to manipulate it. Objects are organized into "classes" with identical characteristics, and classes can inherit functionality from one another. This object-oriented paradigm adds another level of organization on top of the basic variable/procedure elements, and the resulting code is easier to understand and maintain.
The IBM Research Jikes compiler translates Java source files to bytecode. Features include strict adherence to the language specification, extremely fast compile speed, and a sophisticated dependence analysis that allows incremental compilation and automatic makefile generation.
The release of the source in December 1998 initiated one of IBM's first efforts in the open source arena, and since that time Jikes has been maintained and refined using the open source development model. See http://ibm.com/research/jikes for further information.
Kaffe is a free virtual machine designed to execute Java(TM) bytecode. Kaffe can be configured in two modes. In the first mode, it operates as a pure bytecode interpreter (not unlike Javasoft's machine). In the second mode, it performs "just-in-time" code conversion from the abstract code to the host machine's native code. The second mode will ultimately allow execution of Java code at the same speed as standard compiled code, while also maintaining the advantages and flexibility of code independence.
Install the kaffe package if you need a Java virtual machine.
P2c is a system for translating Pascal programs into the C language. P2c accepts input source files in certain Pascal dialects: HP Pascal, Turbo/UCSD Pascal, DEC VAX Pascal, Oregon Software Pascal/2, Macintosh Programmer's Workshop Pascal and Sun/Berkeley Pascal. P2c outputs a set of .c and .h files which make up a C program equivalent to the original Pascal program. The C program can then be compiled using a standard C compiler, such as gcc.
Install the p2c package if you need a program for translating Pascal code into C code.
The p2c-devel package contains the files necessary for development of the p2c Pascal to C translation system.
Install the p2c-devel package if you want to do p2c development.
Perl is a high-level programming language with roots in C, sed, awk and shell scripting. Perl is good at handling processes and files, and is especially good at handling text. Perl's hallmarks are practicality and efficiency. While it is used to do a lot of different things, Perl's most common applications (and what it excels at) are probably system administration utilities and web programming. A large proportion of the CGI scripts on the web are written in Perl. You need the perl package installed on your system so that your system can handle Perl scripts.
PyGNOME is an extension module for python that gives you access to the base GNOME libraries. This means you have access to more widgets, simple configuration interface, metadata support and many other features.
Install pygnome if you need Python bindings for the GNOME libraries.
PyGTK is an extension module for Python that gives you access to the GTK+ widget set. Just about anything you can write in C with GTK+ you can write in Python with PyGTK (within reason), but with all of Python's benefits. PyGTK provides an object-oriented interface at a slightly higher level than the C interface. The PyGTK interface does all of the type casting and reference counting that you'd have to do yourself using the C API.
Install pygtk if you need Python bindings for the GTK+ widget set.
This module contains a wrapper for the libglade library. Libglade is a library similar to the pyglade module, except that it is written in C (so is faster) and is more complete.
Python is an interpreted, interactive, object-oriented programming language often compared to Tcl, Perl, Scheme or Java. Python includes modules, classes, exceptions, very high level dynamic data types and dynamic typing. Python supports interfaces to many system calls and libraries, as well as to various windowing systems (X11, Motif, Tk, Mac and MFC).
Programmers can write new built-in modules for Python in C or C++. Python can be used as an extension language for applications that need a programmable interface. This package contains most of the standard Python modules, as well as modules for interfacing to the Tix widget set for Tk and RPM.
Note that documentation for Python is provided in the python-docs package.
Tcl is a simple scripting language designed to be embedded into other applications. Tcl is designed to be used with Tk, a widget set, which is provided in the tk package. This package also includes tclsh, a simple example of a Tcl application.
If you're installing the tcl package and you want to use Tcl for development, you should also install the tk and tclx packages.
TclX is a set of extensions which make it easier to use the Tcl scripting language for common UNIX/Linux programming tasks. TclX enhances Tcl support for files, network access, debugging, math, lists, and message catalogs. TclX can be used with both Tcl and Tcl/Tk applications.
Install TclX if you are developing applications with Tcl/Tk. You'll also need to install the tcl and tk packages.
Tix (Tk Interface Extension), an add-on for the Tk widget set, is an extensive set of over 40 widgets. In general, Tix widgets are more complex and more capable than the widgets provided in Tk. Tix widgets include a ComboBox, a Motif-style FileSelectBox, an MS Windows-style FileSelectBox, a PanedWindow, a NoteBook, a hierarchical list, a directory tree and a file manager.
Install the tix package if you want to try out more complicated widgets for Tk. You'll also need to have the tcl and tk packages installed.
Tk is a X Windows widget set designed to work closely with the tcl scripting language. It allows you to write simple programs with full featured GUI's in only a little more time then it takes to write a text based interface. Tcl/Tk applications can also be run on Windows and Macintosh platforms.
The Tkinter (Tk interface) program is an graphical user interface for the Python scripting language.
You should install the tkinter package if you'd like to use a graphical user interface for Python programming.
UMB Scheme is a public domain implementation of the Scheme programming language. Scheme is a statically scoped and properly tail-recursive dialect of the Lisp programming language, designed with clear and simple semantics and a minimal number of ways to form expressions.
Install the umb-scheme package if you need an implementation of the Scheme programming language.
This section contains packages of the various libraries. Some libraries are required for normal system operation, while others are only needed if you will be using their features in a program you're writing.
Image-Magick-devel contains the static libraries and header files you'll need to develop ImageMagick applications. ImageMagick is an image manipulation program.
If you want to create applications that will use ImageMagick code or APIs, you'll need to install ImageMagick-devel as well as ImageMagick. You don't need to install it if you just want to use ImageMagick, however.
This package contains the header files, libraries and utilities necessary to write programs that use CORBA technology. If you want to write such programs, you'll also need to install the ORBit package.
XFree86-devel includes the libraries, header files and documentation you'll need to develop programs which run as X clients. XFree86-devel includes the base Xlib library as well as the Xt and Xaw widget sets.
Install XFree86-devel if you are going to develop programs which will run as X clients.
Xaw3d is an enhanced version of the MIT Athena widget set for the X Window System. Xaw3d adds a three-dimensional look to those applications with minimal or no source code changes. Xaw3d-devel includes the header files and static libraries for developing programs that take full advantage of Xaw3d's features.
You should install Xaw3d-devel if you are going to develop applications using the Xaw3d widget set. You'll also need to install the Xaw3d package.
The apache-devel package contains the source code for the Apache Web server and the APXS binary you'll need to build Dynamic Shared Objects (DSOs) for Apache.
If you are installing the Apache Web server, and you want to be able to compile or develop additional modules for Apache, you'll need to install this package.
Libraries, include files and other resources you can use to develop audiofile applications.
The bind-devel package contains all the include files and the library required for DNS (Domain Name Service) development for BIND versions 8.x.x.
You should install bind-devel if you want to develop bind DNS applications. If you install bind-devel, you'll also need to install bind.
The cdrecord distribution contains a SCSI user level transport library. The SCSI library is suitable to talk to any SCSI device without having a special driver for it.
Cdrecord may be easily ported to any system that has a SCSI device driver similar to the scg driver.
This package includes a number of run-time libraries that are compiled on Red Hat Linux 5.2. This package is required if you want to do development for Red Hat Linux 5.2 and other glibc 2.0 based systems.
This package contains the version 2.0.7 of the GNU C library for compiling binaries that will run on Red Hat Linux 2.0 and other glibc 2.0.x Linux based systems. This package includes the runtime libraries.
The control-center-devel package contains the development environment needed for creating the `capplets' used in the GNOME Control Center.
If you're interested in developing capplets for the GNOME control center, you'll want to install this package. If you use the GNOME desktop, but not developing applications, you don't need to install this package.
E2fsprogs-devel contains the libraries and header files needed to develop second extended (ext2) filesystem-specific programs.
You should install e2fsprogs-devel if you want to develop ext2 filesystem-specific programs. If you install e2fsprogs-devel, you'll also want to install e2fsprogs.
The esound-devel Libraries, include files and other resources you can use to develop EsounD applications.
Install esound-devel if you want to develop EsounD applications.
Faces-devel contains the faces program development environment, (i.e., the static libraries and header files).
If you want to develop Faces applications, you'll need to install faces-devel. You'll also need to install the faces package.
The fnlib-devel package contains headers, static libraries and documentation for Fnlib development.
Install fnlib-devel if you want to develop Fnlib applications.
This package is only needed if you intend to develop or compile applications which rely on the FreeType library. If you simply want to run existing applications, you won't need this package.
These are the development libraries and header files for gd, the .gif graphics library.
If you're installing the gd graphics library, you must install gd-devel.
Gdbm-devel contains the development libraries and header files for gdbm, the GNU database system. These libraries and header files are necessary if you plan to do development using the gdbm database.
Install gdbm-devel if you are developing C programs which will use the gdbm database library. You'll also need to install the gdbm package.
gEdit is a small but powerful text editor for the GNOME GUI desktop. This package allows you to develop plug-ins that work within gEdit.
Install gedit-devel if you want to write plug-ins for gEdit.
Static libraries and header files for writing GIMP plugins and extensions.
Static libraries and header files for the support library for the GIMP's X libraries, which are available as public libraries. GLIB includes generally useful data structures.
The glibc-devel package contains the header and object files necessary for developing programs which use the standard C libraries (which are used by nearly all programs). If you are developing programs which will use the standard C libraries, your system needs to have these standard header and object files available in order to create the executables.
Install glibc-devel if you are going to develop programs which will use the standard C libraries.
The glibc-profile package includes the GNU libc libraries and support for profiling using the gprof program. Profiling is analyzing a program's functions to see how much CPU time they use and determining which functions are calling other functions during execution. To use gprof to profile a program, your program needs to use the GNU libc libraries included in glibc-profile (instead of the standard GNU libc libraries included in the glibc package).
If you are going to use the gprof program to profile a program, you'll need to install the glibc-profile program.
The static libraries, header files and documentation for using the GNU MP arbitrary precision library in applications.
If you want to develop applications which will use the GNU MP library, you'll need to install the gmp-devel package. You'll also need to install the gmp package.
The gnome-core-devel package contains the libraries and header files for creating panels for the GNOME GUI desktop environment.
If you're developing GNOME panels, you'll need to install gnome-core-devel.
This packages installs the libraries and files needed to develop some GNOME games.
GNOME (GNU Network Object Model Environment) is a user-friendly set of GUI applications and desktop tools to be used in conjunction with a window manager for the X Window System. The gnome-libs-devel package includes the libraries and include files that you will need to develop GNOME applications.
You should install the gnome-libs-devel package if you would like to develop GNOME applications. You don't need to install gnome-libs-devel if you just want to use the GNOME desktop environment.
Libraries, include files and other files you can use to develop Objective C GNOME applications.
If you're interested in developing GNOME applications, you should install this package.
Files needed to develop apps which interact with gnome-pim applications via CORBA.
The gpm-devel program contains the libraries and header files needed for development of mouse driven programs. This package allows you to develop text-mode programs which use the mouse.
Install gpm-devel if you need to develop text-mode programs which will use the mouse. You'll also need to install the gpm package.
The gtk+-devel package contains the static libraries and header files needed for developing GTK+ (GIMP ToolKit) applications. The gtk+-devel package contains glib (a collection of routines for simplifying the development of GTK+ applications), GDK (the General Drawing Kit, which simplifies the interface for writing GTK+ widgets and using GTK+ widgets in applications), and GTK+ (the widget set).
Install gtk+-devel if you need to develop GTK+ applications. You'll also need to install the gtk+ package.
The guile-devel package includes the libraries, header files, etc., that you'll need to develop applications that are linked with the GUILE extensibility library.
You need to install the guile-devel package if you want to develop applications that will be linked to GUILE. You'll also need to install the guile package.
The header files, static libraries and documentation needed for developing Imlib applications. Imlib is an image loading and rendering library for X11R6.
Install the imlib-devel package if you want to develop Imlib applications. You'll also need to install the imlib and imlib_cfgeditor packages.
The inn-devel package contains the INN (InterNetNews) library, which several programs that interface with INN need in order to work (for example, newsgate and tin).
If you are installing a program which must interface with the INN news system, you should install inn-devel.
This package includes the header files you will need to compile applications for KDE. Also included is the KDE API documentation in HTML format for easy browsing.
The kudzu-devel package contains the libkudzu and libmodules libraries, which are libraries used for hardware probing and configuration.
Libraries and includes files you can use for libghttp development
The libglade-devel package contains the libraries, include files, etc., that you can use to develop libglade applications.
The libgr-devel package contains the header files and static libraries, etc., for developing programs which can handle the various graphics file formats supported by the libgr library.
Install libgr-devel if you want to develop programs for handling the graphics file formats supported by the libgr library. You'll also need to have the libgr package installed.
Install this package if you wish to develop applications that access information on system statistics such as CPU and memory usage.
The libjpeg-devel package includes the header files and static libraries necessary for developing programs which will manipulate JPEG files using the libjpeg library.
If you are going to develop programs which will manipulate JPEG images, you should install libjpeg-devel. You'll also need to have the libjpeg package installed.
Libpcap provides a portable framework for low-level network monitoring. Libpcap can provide network statistics collection, security monitoring and network debugging. Since almost every system vendor provides a different interface for packet capture, the libpcap authors created this system-independent API to ease in porting and to alleviate the need for several system-dependent packet capture modules in each application.
Install libpcap if you need to do low-level network traffic monitoring on your network.
The libpng-devel package contains the header files and static libraries necessary for developing programs using the PNG (Portable Network Graphics) library.
If you want to develop programs which will manipulate PNG image format files, you should install libpng-devel. You'll also need to install the libpng package.
This package includes the libraries and header files necessary for developing programs which will access the termcap database.
If you need to develop programs which will access the termcap database, you'll need to install this package. You'll also need to install the libtermcap package.
This package contains the header files and static libraries for developing programs which will manipulate TIFF format image files using the libtiff library.
If you need to develop programs which will manipulate TIFF format image files, you should install this package. You'll also need to install the libtiff package.
This package contains the static libraries, header files and documentation necessary for development of programs that will use the libungif library to load and save GIF format image files.
You should install this package if you need to develop programs which will use the libungif library functions for loading and saving GIF format image files. You'll also need to install the libungif package.
This packages contains the libraries, include and other files you can use to develop libxml applications.
Linuxconf is an extremely capable system configuration tool. It provides a variety of interfaces through which you can configure your Linux system and manage a large proportion of the system's operations.
This package provides the components necessary for developing Linuxconf modules outside of the linuxconf source tree and/or developing stand-alone utilities using the linuxconf interface toolkit.
Install linuxconf-devel if you want to develop Linuxconf modules. You must also have linuxconf installed.
The header files and libraries for developing applications that use the ncurses CRT screen handling and optimization package.
Install the ncurses-devel package if you want to develop applications which will use ncurses.
The newt-devel package contains the header files and libraries necessary for developing applications which use newt. Newt is a development library for text mode user interfaces. Newt is based on the slang library.
Install newt-devel if you want to develop applications which will use newt.
This package includes the development libraries and header files needed for compiling applications that use LDAP internals. Install this package only if you plan to develop or will need to compile customized LDAP clients.
This package contains a library for inspecting and setting devices connected to the PCI bus.
This package contains the development headers that are used to build the pilot-link package. It also includes the static libraries necessary to build static pilot apps.
This package contains the header files and libraries needed to compile applications which will directly interact with a PostgreSQL server.
Install this package if you want to develop applications which will interact with a PostgreSQL server.
The Python programming language's interpreter can be extended with dynamically loaded extensions and can be embedded in other programs. This package contains the header files and libraries needed to do these types of tasks.
Install python-devel if you want to develop Python extensions. The python package will also need to be installed. You'll probably also want to install the python-docs package, which contains Python documentation.
Contains the files necessary to develop applications using Qt: header files, the Qt meta object compiler, man pages, HTML documentation and example programs. See http://www.troll.no for more information about Qt, or file:/usr/doc/qt-devel-2.0.1/index.html for Qt documentation in HTML.
Contains the files necessary to compile applications using Qt 1.x. This library is compiled for backwards compatibility with legacy applications only; new applications should be compiled against Qt version 2 or later.
The readline library will read a line from the terminal and return it. Use of the readline library allows programmers to provide an easy to use and more intuitive interface for users.
If you want to develop programs which will use the readline library, you'll need to have the readline-devel package installed. You'll also need to have the readline package installed.
This package contains the RPM C library and header files. These development files will simplify the process of writing programs which manipulate RPM packages and databases. These file are intended to simplify the process of creating graphical package managers or any other tools that need an intimate knowledge of RPM packages in order to function.
This package should be installed if you want to develop programs that will manipulate RPM packages and databases.
This package contains the S-Lang extension language static libraries and header files which you'll need if you want to develop S-Lang based applications. Documentation which may help you write S-Lang based applications is also included.
Install the slang-devel package if you want to develop applications based on the S-Lang extension language.
This package contains the library needed for compiling applications which will use the SoX sound file format converter.
Install sox-devel if you want to develop applications which will use SoX.
The svgalib-devel package contains the libraries and header files needed to build programs which will use the SVGAlib low-level graphics library.
Install the svgalib-devel package if you want to develop applications which will use the SVGAlib library.
The ucd-snmp-devel package contains the development libraries and header files for use with the UCD-SNMP project's network management tools.
Install the ucd-snmp-devel package if you would like to develop applications for use with the UCD-SNMP project's network management tools. You'll also need to have the ucd-snmp and ucd-snmp-utils packages installed.
Static libraries and header files for libwww, which are available as public libraries.
The static libraries and header files needed for building plug-ins for the Xmms MP3 player.
The xpm-devel package contains the development libraries and header files necessary for developing applications which will use the XPM library. The XPM library is used by many programs for displaying pixmaps in the X Window System.
Install the xpm-devel package if you want to develop applications using the XPM pixmap library. You'll also need to install the xpm package.
The zlib-devel package contains the header files and libraries needed to develop programs that use the zlib compression and decompression library.
Install the zlib-devel package if you want to develop applications that will use the zlib library.
This section lists the packages containing system-level development tools.
Kernel-headers includes the C header files for the Linux kernel. The header files define structures and constants that are needed for building most standard programs and are also needed for rebuilding the kernel.
The kernel-source package contains the source code files for the Linux kernel. These source files are needed to build most C programs, since they depend on the constants defined in the source code. The source files can also be used to build a custom kernel that is better tuned to your particular hardware, if you are so inclined (and you know what you're doing).
This section contains packages that provide the usual assortment of tools that programmers require.
If you know what malloc() violations are, you'll be interested in ElectricFence. ElectricFence is a tool which can be used for C programming and debugging. It uses the virtual memory hardware of your system to detect when software overruns malloc() buffer boundaries, and/or to detect any accesses of memory released by free(). ElectricFence will then stop the program on the first instruction that caused a bounds violation and you can use your favorite debugger to display the offending statement.
This package will install ElectricFence, which you can use if you're searching for a debugger to find malloc() violations.
GNU's Autoconf is a tool for configuring source code and Makefiles. Using Autoconf, programmers can create portable and configurable packages, since the person building the package is allowed to specify various configuration options.
You should install Autoconf if you are developing software and you'd like to use it to create shell scripts which will configure your source code packages. If you are installing Autoconf, you will also need to install the GNU m4 package.
Note that the Autoconf package is not required for the end user who may be configuring software with an Autoconf-generated script; Autoconf is only required for the generation of the scripts, not their use.
Automake is an experimental Makefile generator. Automake was inspired by the 4.4BSD make and include files, but aims to be portable and to conform to the GNU standards for Makefile variables and targets.
You should install Automake if you are developing software and would like to use its capabilities of automatically generating GNU standard Makefiles. if you install Automake, you will also need to install GNU's Autoconf package.
The bin86 package provides an assembler and linker for real mode 80x86 instructions. You'll need to have this package installed in order to build programs that run in real mode, including LILO and the kernel's bootstrapping code, from their sources.
You should install bin86 if you intend to build programs that run in real mode from their source code.
Binutils is a collection of binary utilities, including ar (for creating, modifying and extracting from archives), nm (for listing symbols from object files), objcopy (for copying and translating object files), objdump (for displaying information from object files), ranlib (for generating an index for the contents of an archive), size (for listing the section sizes of an object or archive file), strings (for listing printable strings from files), strip (for discarding symbols), c++filt (a filter for demangling encoded C++ symbols), addr2line (for converting addresses to file and line), and nlmconv (for converting object code into an NLM).
Install binutils if you need to perform any of these types of actions on binary files. Most programmers will want to install binutils.
Bison is a general purpose parser generator which converts a grammar description for an LALR context-free grammar into a C program to parse that grammar. Bison can be used to develop a wide range of language parsers, from ones used in simple desk calculators to complex programming languages. Bison is upwardly compatible with Yacc, so any correctly written Yacc grammar should work with Bison without any changes. If you know Yacc, you shouldn't have any trouble using Bison (but you do need to be very proficient in C programming to be able to use Bison). Many programs use Bison as part of their build process. Bison is only needed on systems that are used for development.
If your system will be used for C development, you should install Bison since it is used to build many C programs.
BLT is an extension to the Tk toolkit. BLT's most useful feature is the provision of more widgets for Tk, but it also provides more geometry managers and miscellaneous other commands. Note that you won't need to do any patching of the Tcl or Tk source files to use BLT, but you will need to have Tcl/Tk installed in order to use BLT.
If you are programming with the Tk toolkit, you should install BLT. You will need to have Tcl/Tk installed.
Byacc (Berkeley Yacc) is a public domain LALR parser generator which is used by many programs during their build process.
If you are going to do development on your system, you will want to install this package.
The cdecl package includes the cdecl and c++decl utilities, which are used to translate English to C or C++ function declarations and vice versa.
You should install the cdecl package if you intend to do C and/or C++ programming.
This package includes the binutils required by the Red HAt Linux 5.2 backwards compatibility kit. Binutils is a collection of binary utilities, including ar (for creating, modifying and extracting from archives), nm (for listing symbols from object files), objcopy (for copying and translating object files), objdump (for displaying information from object files), ranlib (for generating an index for the contents of an archive), size (for listing the section sizes of an object or archive file), strings (for listing printable strings from files), strip (for discarding symbols), c++filt (a filter for demangling encoded C++ symbols), addr2line (for converting addresses to file and line), and nbnconv (for converting object code into an NLM).
Install this package if you will be developing programs that need to run on Red Hat Linux 5.2 or other glibc 2.0.x based systems.
Cproto generates function prototypes and variable declarations from C source code. Cproto can also convert function definitions between the old style and the ANSI C style. This conversion will overwrite the original files, however, so be sure to make a backup copy of your original files in case something goes wrong. Since cproto uses a Yacc generated parser, it shouldn't be confused by complex function definitions as much as other prototype generators) because it uses a Yacc generated parser.
Cproto will be useful for C programmers, so install cproto if you are going to do any C programming.
Ctags generates an index (or tag) file of C language objects found in C source and header files. The index makes it easy for text editors or other utilities to locate the indexed items. Ctags can also generate a cross reference file which lists information about the various objects found in a set of C language files in human readable form. Exuberant Ctags improves on ctags because it can find all types of C language tags, including macro definitions, enumerated values (values inside enum{...}), function and method definitions, enum/struct/union tags, external function prototypes, typedef names and variable declarations. Exuberant Ctags is far less likely to be fooled by code containing #if preprocessor conditional constructs than ctags. Exuberant ctags supports output of emacs style TAGS files and can be used to print out a list of selected objects found in source files.
Install ctags if you are going to use your system for C programming.
CVS means Concurrent Version System; it is a version control system which can record the history of your files (usually, but not always, source code). CVS only stores the differences between versions, instead of every version of every file you've ever created. CVS also keeps a log of who, when and why changes occurred, among other aspects.
CVS is very helpful for managing releases and controlling the concurrent editing of source files among multiple authors. Instead of providing version control for a collection of files in a single directory, CVS provides version control for a hierarchical collection of directories consisting of revision controlled files.
These directories and files can then be combined together to form a software release.
Install the cvs package if you need to use a version control system.
The diff command compares files line by line. Diffstat reads the output of the diff command and displays a histogram of the insertions, deletions and modifications in each file. Diffstat is commonly used to provide a summary of the changes in large, complex patch files.
Install diffstat if you need a program which provides a summary of the diff command's output. You'll need to also install diffutils.
The flex program generates scanners. Scanners are programs which can recognize lexical patterns in text. Flex takes pairs of regular expressions and C code as input and generates a C source file as output. The output file is compiled and linked with a library to produce an executable. The executable searches through its input for occurrences of the regular expressions. When a match is found, it executes the corresponding C code. Flex was designed to work with both Yacc and Bison, and is used by many programs as part of their build process.
You should install flex if you are going to use your system for application development.
The GNU gettext package provides a set of tools and documentation for producing multi-lingual messages in programs. Tools include a set of conventions about how programs should be written to support message catalogs, a directory and file naming organization for the message catalogs, a runtime library which supports the retrieval of translated messages, and stand-alone programs for handling the translatable and the already translated strings. Gettext provides an easy to use library and tools for creating, using, and modifying natural language catalogs and is a powerful and simple method for internationalizing programs.
If you would like to internationalize or incorporate multi-lingual messages into programs that you're developing, you should install gettext.
GLADE is a free user interface builder for GTK+ and GNOME, released under the GNU General Public License (GPL). GLADE can produce C source code; C++, Ada95, Python and Perl support is also available, via external tools which process the XML interface description files output by GLADE. GLADE supports most GTK+ 1.2 widgets. Support for styles, however, is not complete.
Install glade if you need an interface builder for GTK+ and GNOME.
Gperf is a perfect hash function generator written in C++. Simply stated, a perfect hash function is a hash function and a data structure that allows recognition of a key word in a set of words using exactly one probe into the data structure.
Install gperf if you need a program that generates perfect hash functions.
The libtool package contains the GNU libtool, a set of shell scripts which automatically configure UNIX and UNIX-like architectures to generically build shared libraries. Libtool provides a consistent, portable interface which simplifies the process of using shared libraries.
If you are developing programs which will use shared libraries, you should install libtool.
A GNU tool for controlling the generation of executables and other non-source files of a program from the program's source files. Make allows users to build and install packages without any significant knowledge about the details of the build process. The details about how the program should be built are provided for make in the program's makefile.
The GNU make tool should be installed on your system because it is commonly used to simplify the process of installing programs.
The patch program applies diff files to originals. The diff command is used to compare an original to a changed file. Diff lists the changes made to the file. A person who has the original file can then use the patch command with the diff file to add the changes to their original file (patching the file).
Patch should be installed because it is a common way of upgrading applications.
Make is a GNU tool which allows users to build and install programs without any significant knowledge of the build process. Details about how the program should be built are included in the program's Makefile. Pmake is a particular version (BSD 4.4) of make. Pmake supports some additional syntax which is not in the standard make program. Some Berkeley programs have Makefiles written for pmake.
Pmake should be installed on your system so that you will be able to build programs which require using pmake instead of make.
Customs is a remote execution facility for PMake. Customs is designed to run on a network of machines with a consistent, shared filesystem. Customs requires Sun RPC in order to use XDR (eXternal Data Representation) routines for logging functions.
A single server is designated as the master agent and is additionally responsible for noting when a machine goes down, from which machines any given machine will accept jobs and parcelling out available machines to requesting clients. The job of master is not given to any one machine but, rather, is decided among the active agents whenever the previous master dies.
Clients are provided to: - alter the availability criteria for the local machine (importquota) - find the status of all registered hosts on the net (reginfo). - abort, restart or ping any customs agent on the network (cctrl). - export a command from the shell (export). - accept log information from all hosts on the net (logd).
The Revision Control System (RCS) is a system for managing multiple versions of files. RCS automates the storage, retrieval, logging, identification and merging of file revisions. RCS is useful for text files that are revised frequently (for example, programs, documentation, graphics, papers and form letters).
The rcs package should be installed if you need a system for managing different versions of files.