www.delorie.com/gnu/docs/gcc/gcj_8.html   search  
 
Buy the book!


Guide to GNU gcj

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.2 Input Options

gcj has options to control where it looks to find files it needs. For instance, gcj might need to load a class that is referenced by the file it has been asked to compile. Like other compilers for the Java language, gcj has a notion of a class path. There are several options and environment variables which can be used to manipulate the class path. When gcj looks for a given class, it searches the class path looking for matching `.class' or `.java' file. gcj comes with a built-in class path which points at the installed `libgcj.jar', a file which contains all the standard classes.

In the below, a directory or path component can refer either to an actual directory on the filesystem, or to a `.zip' or `.jar' file, which gcj will search as if it is a directory.

-Idir
All directories specified by -I are kept in order and prepended to the class path constructed from all the other options. Unless compatibility with tools like javac is imported, we recommend always using -I instead of the other options for manipulating the class path.

--classpath=path
This sets the class path to path, a colon-separated list of paths (on Windows-based systems, a semicolon-separate list of paths). This does not override the builtin ("boot") search path.

--CLASSPATH=path
Deprecated synonym for --classpath.

--bootclasspath=path
Where to find the standard builtin classes, such as java.lang.String.

--extdirs=path
For each directory in the path, place the contents of that directory at the end of the class path.

CLASSPATH
This is an environment variable which holds a list of paths.

The final class path is constructed like so:

The classfile built by gcj for the class java.lang.Object (and placed in libgcj.jar) contains a special zero length attribute gnu.gcj.gcj-compiled. The compiler looks for this attribute when loading java.lang.Object and will report an error if it isn't found, unless it compiles to bytecode (the option -fforce-classes-archive-check can be used to override this behavior in this particular case.)

-fforce-classes-archive-check
This forces the compiler to always check for the special zero length attribute gnu.gcj.gcj-compiled in java.lang.Object and issue an error if it isn't found.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

  webmaster     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003