Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
G77(1)				   GNU Tools				G77(1)

       g77 - GNU project Fortran Compiler (v0.5.24)

       g77 [option | filename ]...

       The information in this man page	is an extract from the full documenta-
       tion of the GNU Fortran compiler	(version 0.5.24), and  is  limited  to
       the meaning of some of the options.

       This  man  page is not up to date, since	no volunteers want to maintain
       it.  If you find	a discrepancy between the man page and	the  software,
       please check the	Info file, which is the	authoritative documentation.

       If  we find that	the things in this man page that are out of date cause
       significant confusion or	complaints, we will stop distributing the  man
       page.   The  alternative, updating the man page when we update the Info
       file, is	impractical because the	rest of	the work  of  maintaining  GNU
       Fortran	leaves us no time for that.  The GNU project regards man pages
       as obsolete and should not let them take	time away from other things.

       For complete and	current	documentation, refer to	the Info file `g77' or
       the  manual  Using  and Porting GNU Fortran (for	version	0.5.24).  Both
       are made	from the Texinfo source	file g77.texi.

       If your system has the `info' command installed,	the command `info g77'
       should  work, unless g77	has not	been properly installed.  If your sys-
       tem lacks `info', or you	wish to	avoid using it for  now,  the  command
       `more  /usr/info/*'  should work, unless	g77 has	not been prop-
       erly installed.

       If g77 has not been properly installed, so that you cannot  easily  ac-
       cess  the  Info	file for it, ask your system administrator, or the in-
       staller of g77 (if you know who that is)	to fix the problem.

       The C and F77 compilers are integrated; g77 is a	program	 to  call  gcc
       with options to recognize programs written in Fortran (ANSI FORTRAN 77,
       also called F77).  gcc processes	input files through  one  or  more  of
       four  stages:  preprocessing, compilation, assembly, and	linking.  This
       man page	contains full descriptions for only  F77-specific  aspects  of
       the compiler, though it also contains summaries of some general-purpose
       options.	 For a fuller explanation of the compiler, see gcc(1).

       For complete documentation on GNU Fortran, type `info g77'.

       F77 source files	use the	suffix `.f', `.for', or	`.FOR';	F77  files  to
       be  preprocessed	by cpp(1) use the suffix `.F', `.fpp', or `.FPP'; Rat-
       for source files	use the	suffix `.r' (though ratfor itself is not  sup-
       plied as	part of	g77).

       There  are  many	command-line options, including	options	to control de-
       tails of	optimization, warnings,	and code generation, which are	common
       to both gcc and g77.  For full information on all options, see gcc(1).

       Options must be separate: `-dr' is quite	different from `-d -r '.

       Most  `-f'  and	`-W'  options  have  two  contrary  forms:  -fname and
       -fno-name (or -Wname and	-Wno-name). Only  the  non-default  forms  are
       shown here.

       -c     Compile or assemble the source files, but	do not link.  The com-
	      piler output is an object	 file  corresponding  to  each	source

	      Define macro macro with the string `1' as	its definition.

	      Define macro macro as defn.

       -E     Stop  after  the	preprocessing  stage;  do not run the compiler
	      proper.  The output is preprocessed source code, which  is  sent
	      to the standard output.

       -g     Produce  debugging  information in the operating system's	native
	      format (for DBX or SDB or	DWARF).	 GDB also can work  with  this
	      debugging	 information.	On  most  systems that use DBX format,
	      `-g' enables use of extra	debugging information  that  only  GDB
	      can use.

	      Unlike  most  other Fortran compilers, GNU Fortran allows	you to
	      use `-g' with `-O'.  The shortcuts taken by optimized  code  may
	      occasionally  produce surprising results:	some variables you de-
	      clared may not exist at all; flow	of control  may	 briefly  move
	      where you	did not	expect it; some	statements may not be executed
	      because they compute constant results or their values  were  al-
	      ready  at	 hand; some statements may execute in different	places
	      because they were	moved out of loops.

	      Nevertheless it proves possible to debug optimized output.  This
	      makes it reasonable to use the optimizer for programs that might
	      have bugs.

       -Idir  Append directory dir to the list of directories searched for in-
	      clude files.

       -Ldir  Add  directory dir to the	list of	directories to be searched for

	      Use the library named library when linking.

	      Do not search the	standard system	directories for	header	files.
	      Only the directories you have specified with -I options (and the
	      current directory, if appropriate) are searched.

       -O     Optimize.	 Optimizing compilation	takes somewhat more time,  and
	      a	 lot more memory for a large function.	See the	GCC documenta-
	      tion for further optimisation options.  Loop unrolling, in  par-
	      ticular,	may  be	worth investigating for	typical	numerical For-
	      tran programs.

       -o file
	      Place output in file file.

       -S     Stop after the stage of compilation  proper;  do	not  assemble.
	      The  output is an	assembler code file for	each non-assembler in-
	      put file specified.

	      Undefine macro macro.

       -v     Print (on	standard error output) the commands  executed  to  run
	      the stages of compilation.  Also print the version number	of the
	      compiler driver program and of the preprocessor and the compiler
	      proper.  The version numbers of g77 itself and the GCC distribu-
	      tion on which it is based	are distinct.

       -Wall  Issue warnings for conditions which pertain  to  usage  that  we
	      recommend	avoiding and that we believe is	easy to	avoid, even in
	      conjunction with macros.

       file.h	 C header (preprocessor) file
       file.f	 Fortran source	file
       file.for	 Fortran source	file
       file.FOR	 Fortran source	file
       file.F	 preprocessed Fortran source file
       file.fpp	 preprocessed Fortran source file
       file.FPP	 preprocessed Fortran source file
       file.r	 Ratfor	source file (ratfor not	included)
       file.s	 assembly language file
       file.o	 object	file
       a.out	 link edited output
       TMPDIR/cc*	  temporary files
       LIBDIR/cpp	  preprocessor
       LIBDIR/f771	  compiler
       LIBDIR/libg2c.a	  Fortran run-time library
       LIBDIR/libgcc.a	  GCC subroutine library
       /lib/crt[01n].o	  start-up routine
       /lib/libc.a	  standard C library, see intro(3)
       /usr/include	  standard directory for #include files
       LIBDIR/include	  standard gcc directory for #include

       LIBDIR is usually /usr/local/lib/machine/version.

       TMPDIR comes from the environment variable TMPDIR (default /usr/tmp  if
       available, else /tmp).

       gcc(1), cpp(1), as(1), ld(1), gdb(1), adb(1), dbx(1), sdb(1).
       `g77', `gcc', `cpp', `as', `ld',	and `gdb' entries in info.
       Using and Porting GNU Fortran (for version 0.5.24), James Craig Burley;
       Using and Porting GNU CC	(for version 2.0), Richard M. Stallman;	The  C
       Preprocessor,  Richard M. Stallman; Debugging with GDB: the GNU Source-
       Level Debugger, Richard M. Stallman and Roland H. Pesch;	Using as:  the
       GNU  Assembler,	Dean  Elsner,  Jay  Fenlason  _	 friends; gld: the GNU
       linker, Steve Chamberlain and Roland Pesch.

       For instructions	on how to report bugs, type `info g77 -n Bugs'.

       Copyright (c) 1991-1998 Free Software Foundation, Inc.

       Permission is granted to	make and distribute verbatim  copies  of  this
       manual  provided	 the  copyright	 notice	and this permission notice are
       preserved on all	copies.

       Permission is granted to	copy and distribute modified versions of  this
       manual under the	conditions for verbatim	copying, provided that the en-
       tire resulting derived work is distributed under	the terms of a permis-
       sion notice identical to	this one.

       Permission  is granted to copy and distribute translations of this man-
       ual into	another	language, under	the above conditions for modified ver-
       sions,  except  that this permission notice may be included in transla-
       tions approved by the Free Software Foundation instead of in the	origi-
       nal English.

       See the GNU CC Manual for the contributors to GNU CC.  See the GNU For-
       tran Manual for the contributors	to GNU Fortran.

GNU Tools			  1999-02-14				G77(1)


Want to link to this manual page? Use this URL:

home | help