Help:Gcc compiler
Gcc includes a family of compiler front and back ends, supporting many languages including C, C++, java, and fortran for a number of processors. Only C and C++ are documented by this page, but other front ends are at least listed. Check the main documentation for additional details.
- Software homepage
- https://gcc.gnu.org/
- Availability
- unix, windows via cygwin
- The main gcc suite should be installed on all unix machines. Ask if you need a front end that is not installed, or if it is not installed at all.
- commands
- gcc g++ g77 gfortran gcj gcjh gcov gij grepjar jar jcf-dump jv-convert jv-scan rmic rmiregistry
- Other related software
- emacs
- gdb
- View online documentation
- man pages
- info docs viewable in emacs
- info --directory=/opt/gcc-342/info
Basic details[edit]
The C compiler installed on these systems is the freeware gcc compiler. This compiler differs somewhat from the commercial Sun compiler. The command to run the compiler is:
gcc options... source files...
- -o filename
- name the output executable filename instead of a.out
- -O2
- use the maximum optimization level to reduce execution time
- -g
- include extra debugging symbols to allow the use of gdb or dbx
- -Wall
- turn on almost all useful warnings; this may catch bugs and portability problems in your code
- -c
- compile source to object file, do not link (for independantly compiling a single module of a multiple source file project)
For example, to compile a file called prog.c, use the command
- gcc -O2 prog.c
which would compile prog.c with the highest level of optimization, and save the result in the executable a.out.
Using C++[edit]
gcc supports both C and C++. If you wish to compile a C++ program, use 'g++' instead of gcc, and use the '.cpp' or '.C' extension instead of the '.c' extension. The same options as above may be used.
Read the man page for gcc and g++ for additional information.
References[edit]
- The C Programming Language, Khernigan & Ritchie
- The C++ Programming Language, Bjarne Stroustrup
- The Posix Programmer's Guide, Donald Lewine
- several other unix books from O'Reilly & Associates