- Table of Contents
- Copyright
- About the Lead Authors
- About the Contributing Authors
- Acknowledgments
- Tell Us What You Think!
- Introduction
- I. Red Hat Linux Installation and User Services
- Chapter 1. Introduction to Red Hat Linux
- Chapter 2. Installation of Your Red Hat System
- Chapter 3. LILO and Other Boot Managers
- Chapter 4. Configuring the X Window System, Version 11
- Chapter 5. Window Managers
- Chapter 6. Connecting to the Internet
- Chapter 7. IRC, ICQ, and Chat Clients
- Chapter 8. Using Multimedia and Graphics Clients
- II. Configuring Services
- Chapter 9. System Startup and Shutdown
- Chapter 10. SMTP and Protocols
- Chapter 11. FTP
- Chapter 12. Apache Server
- Chapter 13. Internet News
- Chapter 14. Domain Name Service and Dynamic Host Configuration Protocol
- Chapter 15. NIS: Network Information Service
- Chapter 16. NFS: Network Filesystem
- Chapter 17. Samba
- III. System Administration and Management
- Chapter 18. Linux Filesystems, Disks, and Other Devices
- Chapter 19. Printing with Linux
- Chapter 20. TCP/IP Network Management
- Chapter 21. Linux System Administration
- Chapter 22. Backup and Restore
- Chapter 23. System Security
- IV. Red Hat Development and Productivity
- Chapter 24. Linux C/C++ Programming Tools
- Background on the C Language
- Elements of the C++ Language
- Project Management Tools
- GNU C/C++ Compiler Command-Line Switches
- New Features of the GNU egcs Compiler System
- Additional Resources
- Summary
- Chapter 25. Shell Scripting
- Chapter 26. Automating Tasks
- Chapter 27. Configuring and Building Kernels
- Chapter 28. Emulators, Tools, and Window Clients
- V. Appendixes
- A. The Linux Documentation Project
- B. Top Linux Commands and Utilities
- C. The GNU General Public License
- D. Red Hat Linux RPM Package Listings
New Features of the GNU egcs Compiler System
The egcs (pronounced "eggs") program suite originally was an experimental version of the gcc compiler whose development was first hosted by Cygnus Support (which is now part of Red Hat). Starting with Red Hat 5.1 for Intel, egcs was made available for installation as part of your Red Hat Linux system.
When first being developed, Cygnus described egcs as an experimental step in the development of gcc. Since its first release in late summer 1997, egcs has incorporated many of the latest developments and features from parallel development of gcc with many new developments of its own, such as a built-in Fortran 77, Java, and Objective C front ends. Some people have suggested that the name be changed from "Experimental GNU Compiler System" to "Enhanced GNU Compiler System."
Although some Linux developers may have felt that development of egcs represented a fork (or split) in gcc compiler development, Cygnus stated that cooperation between the developers of gcc and egcs would prevent this. The hope, according to Cygnus, was that the new compiler architecture and features of egcs would help gcc be the best compiler in the world.
In April 1999, egcs officially became part of future GNU gcc software, and according to Cygnus, the egcs team will be responsible for rolling out future GCC releases. We can only hope that Red Hat will live up to that commitment.
Problems might occur when you are using egcs if you try to build a software package written in C++ that references gcc in its Makefile.
The Makefile script may contain names and locations of programs and files used during the build process. The wmx Makefile contained the following two definitions:
CC = gcc CCC = gcc
While this will work if you have only gcc installed, if you install the egcs suite, you will need to change the name of the designated C++ compiler in your Makefile to g++, like this:
CC = gcc CCC = g++
Just be aware that if you use egcs to compile C++ source files (files ending in .C, .cc, or .cxx), you might have to fix the software's Makefile first.
For more information about egcs and the latest updates, versions, or feature news about egcs, browse to http://www.gnu.org/software/gcc/gcc.html. You will find an egcs FAQ and pointers to the latest stable egcs release, or snapshots of the most recent development version.
Additional Resources | Next Section

Account Sign In
View your cart