X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=INSTALL%2Fconfigure.html;fp=INSTALL%2Fconfigure.html;h=40d681517e2bd0595e6dbfc71a553f0ddafc68bc;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=ebe9dc0bd1bfc6c07f3f0e4ba341593bea959fc6;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/INSTALL/configure.html b/INSTALL/configure.html index ebe9dc0b..40d68151 100644 --- a/INSTALL/configure.html +++ b/INSTALL/configure.html @@ -3,11 +3,46 @@
We use srcdir to refer to the toplevel source directory for GCC; we use objdir to refer to the toplevel build/object directory. -
If you obtained the sources via CVS, srcdir must refer to the top
-gcc
directory, the one where the MAINTAINERS
can be found,
-and not its gcc
subdirectory, otherwise the build will fail.
+
If you obtained the sources via SVN, srcdir must refer to the top +gcc directory, the one where the MAINTAINERS can be found, +and not its gcc subdirectory, otherwise the build will fail. + +
If either srcdir or objdir is located on an automounted NFS +file system, the shell's built-in pwd command will return +temporary pathnames. Using these can lead to various sorts of build +problems. To avoid this issue, set the PWDCMD environment +variable to an automounter-aware pwd command, e.g., +pawd or ‘amq -w’, during the configuration and build +phases.
First, we highly recommend that GCC be built into a separate directory than the sources which does not reside @@ -27,180 +70,195 @@ get extensive testing; building where objdir is a subdirectory of srcdir is unsupported.
If you have previously built GCC in the same directory for a
-different target machine, do make distclean
to delete all files
-that might be invalid. One of the files this deletes is
-Makefile
; if make distclean
complains that Makefile
-does not exist, it probably means that the directory is already suitably
-clean. However, with the recommended method of building in a separate
-objdir, you should simply use a different objdir for each
-target.
-
-
Second, when configuring a native system, either cc
or
-gcc
must be in your path or you must set CC
in
+different target machine, do ‘make distclean’ to delete all files
+that might be invalid. One of the files this deletes is Makefile;
+if ‘make distclean’ complains that Makefile does not exist
+or issues a message like “don't know how to make distclean” it probably
+means that the directory is already suitably clean. However, with the
+recommended method of building in a separate objdir, you should
+simply use a different objdir for each target.
+
+
Second, when configuring a native system, either cc or +gcc must be in your path or you must set CC in your environment before running configure. Otherwise the configuration scripts may fail. -
Note that the bootstrap compiler and the resulting GCC must be link -compatible, else the bootstrap will fail with linker errors about -incompatible object file formats. Several multilibed targets are -affected by this requirement, see -host/target specific installation notes. -
To configure GCC: -
% mkdir objdir ++% mkdir objdir % cd objdir % srcdir/configure [options] [target] -+
If you will be distributing binary versions of GCC, with modifications +to the source code, you should use the options described in this +section to make clear that your version contains modifications. + +
--with-pkgversion=
versionThe default value is ‘GCC’. -
--with-bugurl=
urlThe default value refers to the FSF's GCC bug tracker. + +
--target=
target
+ --target=
target
+ Use options to override several configure time options for
-GCC. A list of supported options follows; configure
---help
may list other options, but those not listed below may not
+
Use options to override several configure time options for +GCC. A list of supported options follows; ‘configure +--help’ may list other options, but those not listed below may not work and should not normally be used. +
Note that each --enable option has a corresponding +--disable option and that each --with option has a +corresponding --without option. +
--prefix=
dirname
- --prefix=
dirname/usr/local
.
+/usr/local.
We highly recommend against dirname being the same or a -subdirectory of objdir or vice versa. +subdirectory of objdir or vice versa. If specifying a directory +beneath a user's home directory tree, some shells will not expand +dirname correctly if it contains the ‘~’ metacharacter; use +$HOME instead. -
These additional options control where certain parts of the distribution -are installed. Normally you should not need to use these options. +
The following standard autoconf options are supported. Normally you +should not need to use these options.
--exec-prefix=
dirname
-
prefix
.
-
- --bindir=
dirname
- gcc
and g++
). The default is
-
exec-prefix/bin
.
-
- --libdir=
dirname
-
exec-prefix/lib
.
-
- --with-slibdir=
dirname
-
libdir
.
-
- --infodir=
dirname
-
prefix/info
.
-
- --mandir=
dirname
-
prefix/man
. (Note that the manual pages are only extracts from
-the full GCC manuals, which are provided in Texinfo format. The
-g77
manpage is unmaintained and may be out of date; the others
+--exec-prefix=
dirname--bindir=
dirname--libdir=
dirname--libexecdir=
dirname--with-slibdir=
dirname--infodir=
dirname--datadir=
dirname--mandir=
dirname--with-gxx-include-dir=
dirname
- --with-gxx-include-dir=
dirname
prefix/include/g++-v3
.
+prefix/include/c++/version.
--program-prefix=
prefix
- --program-prefix=foo-
would result in gcc
-being installed as /usr/local/bin/foo-gcc
.
-
- --program-suffix=
suffix
- --program-suffix=-3.1
-would result in gcc
being installed as
-/usr/local/bin/gcc-3.1
.
-
- --program-transform-name=
pattern
- sed
script pattern to be applied to the names
-of programs to install in bindir (see above). pattern has to
-consist of one or more basic sed
editing commands, separated by
-semicolons. For example, if you want the gcc
program name to be
-transformed to the installed program /usr/local/bin/myowngcc
and
-the g++
program name to be transformed to
-/usr/local/bin/gspecial++
without changing other program names,
+ --program-prefix=
prefix--program-suffix=
suffix--program-transform-name=
pattern--program-transform-name='s/^gcc$/myowngcc/; s/^g++$/gspecial++/'
+--program-transform-name='s/^gcc$/myowngcc/; s/^g++$/gspecial++/'
to achieve this effect.
All three options can be combined and used together, resulting in more -complex conversion patterns. As a basic rule, prefix (and +complex conversion patterns. As a basic rule, prefix (and suffix) are prepended (appended) before further transformations can happen with a special transformation script pattern. -
As currently implemented, these options only take effect for native +
As currently implemented, this option only takes effect for native builds; cross compiler binaries' names are not transformed even when a transformation is explicitly asked for by one of these options.
For native builds, some of the installed programs are also installed
with the target alias in front of their name, as in
-i686-pc-linux-gnu-gcc
. All of the above transformations happen
-before the target alias is prepended to the name - so, specifying
---program-prefix=foo-
and program-suffix=-3.1
, the
+‘i686-pc-linux-gnu-gcc’. All of the above transformations happen
+before the target alias is prepended to the name—so, specifying
+--program-prefix=foo- and program-suffix=-3.1, the
resulting binary would be installed as
-/usr/local/bin/i686-pc-linux-gnu-foo-gcc-3.1
.
+/usr/local/bin/i686-pc-linux-gnu-foo-gcc-3.1.
As a last shortcoming, none of the installed Ada programs are
transformed yet, which will be fixed in some time.
-
--with-local-prefix=
dirname
- --with-local-prefix=
dirname/usr/local
. Specify this option if you want the compiler to
-search directory
dirname/include
for locally installed
-header files instead of /usr/local/include
.
+/usr/local. Specify this option if you want the compiler to
+search directory dirname/include for locally installed
+header files instead of /usr/local/include.
- You should specify --with-local-prefix
only if your
-site has a different convention (not /usr/local
) for where to put
+
You should specify --with-local-prefix only if your +site has a different convention (not /usr/local) for where to put site-specific files. -
The default value for --with-local-prefix
is /usr/local
-regardless of the value of --prefix
. Specifying
---prefix
has no effect on which directory GCC searches for
+
The default value for --with-local-prefix is /usr/local +regardless of the value of --prefix. Specifying +--prefix has no effect on which directory GCC searches for local header files. This may seem counterintuitive, but actually it is logical. -
The purpose of --prefix
is to specify where to install
-GCC. The local header files in /usr/local/include
--if you put
-any in that directory--are not part of GCC. They are part of other
-programs--perhaps many others. (GCC installs its own header files in
-another directory which is based on the --prefix
value.)
+
The purpose of --prefix is to specify where to install +GCC. The local header files in /usr/local/include—if you put +any in that directory—are not part of GCC. They are part of other +programs—perhaps many others. (GCC installs its own header files in +another directory which is based on the --prefix value.)
Both the local-prefix include directory and the GCC-prefix include -directory are part of GCC's "system include" directories. Although these +directory are part of GCC's “system include” directories. Although these two directories are not fixed, they need to be searched in the proper order for the correct processing of the include_next directive. The local-prefix include directory is searched before the GCC-prefix include directory. Another characteristic of system include directories is that pedantic warnings are turned off for headers in these directories. -
Some autoconf macros add -I
directory options to the
+
Some autoconf macros add -I directory options to the compiler command line, to ensure that directories containing installed packages' headers are searched. When directory is one of GCC's system include directories, GCC will ignore the option so that system @@ -209,124 +267,113 @@ may result in a search order different from what was specified but the directory will still be searched.
GCC automatically searches for ordinary libraries using
-GCC_EXEC_PREFIX
. Thus, when the same installation prefix is
+GCC_EXEC_PREFIX. Thus, when the same installation prefix is
used for both GCC and packages, GCC will automatically search for
both headers and libraries. This provides a configuration that is
easy to use. GCC behaves in a manner similar to that when it is
-installed as a system compiler in /usr
.
+installed as a system compiler in /usr.
Sites that need to install multiple versions of GCC may not want to
use the above simple configuration. It is possible to use the
---program-prefix
, --program-suffix
and
---program-transform-name
options to install multiple versions
+--program-prefix, --program-suffix and
+--program-transform-name options to install multiple versions
into a single directory, but it may be simpler to use different prefixes
-and the --with-local-prefix
option to specify the location of the
+and the --with-local-prefix option to specify the location of the
site-specific files for each version. It will then be necessary for
users to specify explicitly the location of local site libraries
-(e.g., with LIBRARY_PATH
).
+(e.g., with LIBRARY_PATH).
-
The same value can be used for both --with-local-prefix
and
---prefix
provided it is not /usr
. This can be used
-to avoid the default search of /usr/local/include
.
+
The same value can be used for both --with-local-prefix and +--prefix provided it is not /usr. This can be used +to avoid the default search of /usr/local/include. -
Do not specify /usr
as the --with-local-prefix
!
-The directory you use for --with-local-prefix
must not
+
Do not specify /usr as the --with-local-prefix!
+The directory you use for --with-local-prefix must not
contain any of the system's standard header files. If it did contain
them, certain programs would be miscompiled (including GNU Emacs, on
certain targets), because this would override and nullify the header
-file corrections made by the fixincludes
script.
+file corrections made by the fixincludes script.
Indications are that people who use this option use it based on mistaken
ideas of what it is for. People use it as if it specified where to
install part of GCC. Perhaps they make this assumption because
installing GCC creates the directory.
-
--enable-shared[=
package[,...]]
- --enable-shared[=
package[,...]]
libobjc
which is built as a static library only by
-default.
+are enabled by default on all platforms that support shared libraries.
If a list of packages is given as an argument, build shared libraries
only for the listed packages. For other packages, only static libraries
will be built. Package names currently recognized in the GCC tree are
-libgcc
(also known as gcc
), libstdc++
(not
-libstdc++-v3
), libffi
, zlib
, boehm-gc
and
-libjava
. Note that libobjc
does not recognize itself by
-any name, so, if you list package names in --enable-shared
,
-you will only get static Objective-C libraries. libf2c
and
-libiberty
do not support shared libraries at all.
-
-
Use --disable-shared
to build only static libraries. Note that
---disable-shared
does not accept a list of package names as
-argument, only --enable-shared
does.
-
-
--with-gnu-as
- Use --disable-shared to build only static libraries. Note that
+--disable-shared does not accept a list of package names as
+argument, only --enable-shared does.
+
+
--with-gnu-as
--with-gnu-as
.) If you have more than one
+configured with --with-gnu-as.) If you have more than one
assembler installed on your system, you may want to use this option in
-connection with --with-as=
pathname
.
+connection with --with-as=pathname or
+--with-build-time-tools=pathname.
The following systems are the only ones where it makes a difference
whether you use the GNU assembler. On any other system,
---with-gnu-as
has no effect.
+--with-gnu-as has no effect.
hppa1.0-
any-
any
-hppa1.1-
any-
any
-i386-
any-sysv
-i386-
any-isc
-i860-
any-bsd
-m68k-bull-sysv
-m68k-hp-hpux
-m68k-sony-bsd
-m68k-altos-sysv
-m68000-hp-hpux
-m68000-att-sysv
-
any-lynx-lynxos
-mips-
any
+On the systems listed above (except for the HP-PA, for ISC on the
-386, and for mips-sgi-irix5.*
), if you use the GNU assembler,
-you should also use the GNU linker (and specify --with-gnu-ld
).
-
-
--with-as=
pathname
- --with-as=
pathname
exec_prefix/lib/gcc-lib/
target/
version
-directory, where exec_prefix defaults to prefix which
-defaults to /usr/local
unless overridden by the
---prefix=
pathname
switch described above. target is the
-target system triple, such as sparc-sun-solaris2.7
, and
-version denotes the GCC version, such as 3.0.
-/usr/ccs/bin
on
-Sun Solaris 2).
+PATH
. You may
-want to use --with-as
if no assembler is installed in the
-directories listed above, or if you have multiple assemblers installed
-and want to choose one that is not found by the above rules.
- --with-gnu-ld
- --with-gnu-as
-but for linker.
+ You may want to use --with-as if no assembler
+is installed in the directories listed above, or if you have multiple
+assemblers installed and want to choose one that is not found by the
+above rules.
+
+
--with-gnu-ld
--with-ld=
pathname
- --with-as
, but for the linker.
+ --with-ld=
pathname--with-stabs
- --with-stabs
Normally, GCC uses the ECOFF debugging format by default; if you
-prefer BSD stabs, specify --with-stabs
when you configure GCC.
+prefer BSD stabs, specify --with-stabs when you configure GCC.
No matter which default you choose when you configure GCC, the user
-can use the -gcoff
and -gstabs+
options to specify explicitly
+can use the -gcoff and -gstabs+ options to specify explicitly
the debug format for a particular compilation.
-
--with-stabs
is meaningful on the ISC system on the 386, also, if
---with-gas
is used. It selects use of stabs debugging
+
--with-stabs is meaningful on the ISC system on the 386, also, if +--with-gas is used. It selects use of stabs debugging information embedded in COFF output. This kind of debugging information supports C++ well; ordinary COFF debugging information does not. -
--with-stabs
is also meaningful on 386 systems running SVR4. It
+
--with-stabs is also meaningful on 386 systems running SVR4. It
selects use of stabs debugging information embedded in ELF output. The
C++ compiler currently (2.6.0) does not support the DWARF debugging
information normally used on 386 SVR4 platforms; stabs provide a
workable alternative. This requires gas and gdb, as the normal SVR4
tools can not generate or interpret stabs.
-
--disable-multilib
- --disable-multilib
Some targets provide finer-grained control over which multilibs are built
-(e.g., --disable-softfloat
):
+(e.g., --disable-softfloat):
arc-*-elf*
- arc-*-elf*
arm-*-*
- arm-*-*
m68*-*-*
- m68*-*-*
mips*-*-*
- mips*-*-*
powerpc*-*-*, rs6000*-*-*
- powerpc*-*-*, rs6000*-*-*
--enable-threads
- --enable-threads
In general, the best (and, in many cases, the only known) threading
model available will be configured for use. Beware that on some
-systems, gcc has not been taught what threading models are generally
-available for the system. In this case, --enable-threads
is an
-alias for --enable-threads=single
.
+systems, GCC has not been taught what threading models are generally
+available for the system. In this case, --enable-threads is an
+alias for --enable-threads=single.
-
--disable-threads
- --enable-threads=single
.
+ --disable-threads
--enable-threads=
lib
- --enable-threads=
libaix
- dce
- mach
- gthr-mach.h
, is
+aix
dce
gnat
mach
no
- single
.
-posix
- pthreads
- posix
on arm*-*-linux*, *-*-chorusos* and *-*-freebsd*
-only. A future release of gcc might remove this alias or extend it
-to all platforms.
-rtems
- single
- solaris
- vxworks
- win32
- no
posix
posix95
rtems
single
solaris
vxworks
win32
nks
--enable-tls
--disable-tls
--with-cpu=
cpu--with-cpu-32=
cpu--with-cpu-64=
cpu--with-schedule=
cpu--with-arch=
cpu--with-arch-32=
cpu--with-arch-64=
cpu--with-tune=
cpu--with-tune-32=
cpu--with-tune-64=
cpu--with-abi=
abi--with-fpu=
type--with-float=
type--with-mode=
mode--with-divide=
typetraps
breaks
--with-cpu=
cpu
- --enable-altivec
- --enable-target-optspace
- --with-llsc
--without-llsc
--with-mips-plt
--enable-__cxa_atexit
--enable-target-optspace
--disable-cpp
- cpp
program should not be installed.
+ --disable-cpp
--with-cpp-install-dir=
dirname
- cpp
program should be installed
-in
prefix/
dirname/cpp
, in addition to bindir.
+ --with-cpp-install-dir=
dirname--enable-maintainer-mode
- gcc.pot
are normally
+ --enable-initfini-array
.init_array
and .fini_array
+(instead of .init
and .fini
) for constructors and
+destructors. Option --disable-initfini-array has the
+opposite effect. If neither option is specified, the configure script
+will try to guess whether the .init_array
and
+.fini_array
sections are supported and, if they are, use them.
+
+ --enable-maintainer-mode
--enable-maintainer-mode
will enable
+catalog, configuring with --enable-maintainer-mode will enable
this. Note that you need a recent version of the gettext
tools
to do so.
- --enable-version-specific-runtime-libs
- --disable-bootstrap
--enable-bootstrap
--enable-generated-files-in-srcdir
If you configure with --enable-generated-files-in-srcdir then those
+generated files will go into the source directory. This is mainly intended
+for generating release or prerelease tarballs of the GCC sources, since it
+is not a requirement that the users of source releases to have flex, Bison,
+or makeinfo.
+
+
--enable-version-specific-runtime-libs
libsubdir
) rather than the usual places. In
-addition, libstdc++
's include files will be installed in
-
libsubdir/include/g++
unless you overruled it by using
---with-gxx-include-dir=
dirname
. Using this option is
+subdirectory (libdir/gcc) rather than the usual places. In
+addition, ‘libstdc++’'s include files will be installed into
+libdir unless you overruled it by using
+--with-gxx-include-dir=dirname. Using this option is
particularly useful if you intend to use several versions of GCC in
-parallel. This is currently supported by libf2c
and
-libstdc++
, and is the default for libobjc
which cannot be
-changed in this case.
+parallel. This is currently supported by ‘libgfortran’,
+‘libjava’, ‘libmudflap’, ‘libstdc++’, and ‘libobjc’.
- --enable-languages=
lang1,
lang2,...
- --enable-languages=
lang1,
lang2,...
gcc
directory of your GCC source tree:grep language= */config-lang.in -- Currently, you can use any of the following: -
ada
, c
, c++
, f77
, java
, objc
.
-Building the Ada compiler has special requirements, see below.gcc
-sub-tree will be configured. Re-defining LANGUAGES
when calling
-make bootstrap
does not work anymore, as those
-language sub-directories might not have been configured!
-
- --disable-libgcj
- libgcj
isn't built, you
-may need to port it; in this case, before modifying the top-level
-configure.in
so that libgcj
is enabled by default on this platform,
-you may use --enable-libgcj
to override the default.
-
- --with-dwarf2
- grep language= */config-lang.in ++
Currently, you can use any of the following:
+all
, ada
, c
, c++
, fortran
, java
,
+objc
, obj-c++
.
+Building the Ada compiler has special requirements, see below.
+If you do not pass this flag, or specify the option all
, then all
+default languages available in the gcc sub-tree will be configured.
+Ada and Objective-C++ are not default languages; the rest are.
+Re-defining LANGUAGES
when calling ‘make’ does not
+work anymore, as those language sub-directories might not have been
+configured!
+
+
--enable-stage1-languages=
lang1,
lang2,...
all
will select all
+of the languages enabled by --enable-languages. This option is
+primarily useful for GCC development; for instance, when a development
+version of the compiler cannot bootstrap due to compiler bugs, or when
+one is debugging front ends other than the C front end. When this
+option is used, one can then build the target libraries for the
+specified languages with the stage-1 compiler by using make
+stage1-bubble all-target, or run the testsuite on the stage-1 compiler
+for the specified languages using make stage1-start check-gcc.
+
+ --disable-libada
--disable-libssp
--disable-libgomp
--with-dwarf2
--enable-win32-registry
- --enable-win32-registry=
key
- --disable-win32-registry
- --enable-win32-registry
option enables Windows-hosted GCC
-to look up installations paths in the registry using the following key:
+ --enable-targets=all
--enable-targets=
target_list+HKEY_LOCAL_MACHINE\SOFTWARE\Free Software Foundation\
key-
--enable-secureplt
--enable-cld
--enable-win32-registry
--enable-win32-registry=
key--disable-win32-registry
HKEY_LOCAL_MACHINE\SOFTWARE\Free Software Foundation\
key
+
key defaults to GCC version number, and can be overridden by the
---enable-win32-registry=
key option. Vendors and distributors
+--enable-win32-registry=key option. Vendors and distributors
who use custom installers are encouraged to provide a different key,
perhaps one comprised of vendor name and GCC version number, to
avoid conflict with existing installations. This feature is enabled
-by default, and can be disabled by
--disable-win32-registry
+by default, and can be disabled by --disable-win32-registry
option. This option has no effect on the other hosts.
-
--nfp
- m68k-sun-sunos
n
and
-m68k-isi-bsd
. On any other system, --nfp
has no effect.
-
- --enable-checking
- --enable-checking=
list
- misc
, tree
, gc
, rtl
and gcac
. The
-default when list is not specified is misc,tree,gc
; the
-checks rtl
and gcac
are very expensive.
-
- --enable-nls
- --disable-nls
- --enable-nls
option enables Native Language Support (NLS),
+ --nfp
--enable-werror
--disable-werror
--enable-werror=yes
--enable-werror=no
--enable-checking
--enable-checking=
listThe ‘valgrind’ check requires the external valgrind
+simulator, available from http://valgrind.org/. The
+‘df’, ‘rtl’, ‘gcac’ and ‘valgrind’ checks are very expensive.
+To disable all checking, ‘--disable-checking’ or
+‘--enable-checking=none’ must be explicitly requested. Disabling
+assertions will make the compiler and runtime slightly faster but
+increase the risk of undetected internal errors causing wrong code to be
+generated.
+
+
--disable-stage1-checking
--enable-stage1-checking
--enable-stage1-checking=
list--enable-coverage
--enable-coverage=
level--enable-gather-detailed-mem-stats
--with-gc
--with-gc=
choice--enable-nls
--disable-nls
--disable-nls
option disables NLS.
+canadian cross build. The --disable-nls option disables NLS.
- --with-included-gettext
- --with-included-gettext
option causes the build
-procedure to prefer its copy of GNU gettext
.
+ --with-included-gettext
--with-catgets
- gettext
but has the
+ --with-catgets
gettext
but has the
inferior catgets
interface, the GCC build procedure normally
ignores catgets
and instead uses GCC's copy of the GNU
-gettext
library. The --with-catgets
option causes the
+gettext
library. The --with-catgets option causes the
build procedure to use the host's catgets
in this situation.
- --with-libiconv-prefix=
dir
-
dir/include
and
-libiconv library files in
dir/lib
.
+ --with-libiconv-prefix=
dir--with-system-zlib
- --enable-obsolete
- --enable-obsolete
All support for systems which have been obsoleted in one release of GCC
is removed entirely in the next major release, unless someone steps
-forward to maintain the port.
+forward to maintain the port.
+
+
--enable-decimal-float
--enable-decimal-float=yes
--enable-decimal-float=no
--enable-decimal-float=bid
--enable-decimal-float=dpd
--disable-decimal-float
--enable-fixed-point
--disable-fixed-point
--with-long-double-128
long double
type should be 128-bit by default on selected
+GNU/Linux architectures. If using --without-long-double-128
,
+long double
will be by default 64-bit, the same as double
type.
+When neither of these configure options are used, the default will be
+128-bit long double
when built against GNU C Library 2.4 and later,
+64-bit long double
otherwise.
+
+ --with-gmp=
pathname--with-gmp-include=
pathname--with-gmp-lib=
pathname--with-mpfr=
pathname--with-mpfr-include=
pathname--with-mpfr-lib=
pathname--with-ppl=
pathname--with-ppl-include=
pathname--with-ppl-lib=
pathname--with-cloog=
pathname--with-cloog-include=
pathname--with-cloog-lib=
pathname--with-host-libstdcxx=
linker-args--with-debug-prefix-map=
mapThe following options only apply to building cross compilers. +
--with-sysroot
--with-sysroot=
dir--with-build-sysroot
--with-build-sysroot=
dirThis option affects the system root for the compiler used to build
+target libraries (which runs on the build system); it does not affect
+the compiler which is used to build GCC itself.
+
+
--with-headers
--with-headers=
dir--without-headers
--with-libs
--with-libs=``
dir1 dir2 ...
dirN''
--with-newlib
__eprintf
to be
+omitted from libgcc.a on the assumption that it will be provided by
+‘newlib’.
+
+ --with-build-time-tools=
dirFor example, on a ia64-hp-hpux system, you may have the GNU +assembler and linker in /usr/bin, and the native tools in a +different path, and build a toolchain that expects to find the +native tools in /usr/bin. + +
When you use this option, you should ensure that dir includes +ar, as, ld, nm, +ranlib and strip if necessary, and possibly +objdump. Otherwise, GCC may use an inconsistent set of +tools.
Some options which only apply to building cross compilers: +
The following option applies to the build of the Java front end. +
--with-headers=
dir
-
prefix/
target/sys-include
doesn't pre-exist.
-These include files will be copied into the gcc
install directory.
-fixincludes
will be run on these files to make them compatible with
-GCC.
---with-libs=``
dir1
dir2 ...
dirN''
- gcc
install
-directory.
---with-newlib
- newlib
is
-being used as the target C library. This causes __eprintf
to be
-omitted from libgcc.a
on the assumption that it will be provided by
-newlib
.
+--disable-libgcj
The following options apply to building ‘libgcj’. + +
--enable-java-maintainer-mode
--with-java-home=
dirname--with-ecj-jar=
filenameIf this option is not given, but an ecj.jar file is found in +the topmost source tree at configure time, then the ‘libgcj’ +build will create and install ecj1, and will also install the +discovered ecj.jar into a suitable place in the install tree. + +
If ecj1 is not installed, then the user will have to supply one
+on his path in order for gcj to properly parse .java
+source files. A suitable jar is available from
+ftp://sourceware.org/pub/java/.
+
+
--disable-getenv-properties
--enable-hash-synchronization
--enable-interpreter
--disable-java-net
--disable-jvmpi
--disable-libgcj-bc
If --disable-libgcj-bc is specified, libgcj is built without
+these options. This allows the compile-time linker to resolve
+dependencies when statically linking to libgcj. However it makes it
+impossible to override the affected portions of libgcj at run-time.
+
+
--enable-reduced-reflection
--with-ecos
--without-libffi
--enable-libgcj-debug
--enable-libgcj-multifile
--with-libiconv-prefix=DIR
--enable-sjlj-exceptions
setjmp
/longjmp
-based scheme for exceptions.
+‘configure’ ordinarily picks the correct value based on the platform.
+Only use this option if you are sure you need a different setting.
+
+ --with-system-zlib
--with-win32-nlsapi=ansi, unicows or unicode
--enable-java-home
--with-arch-directory=ARCH
--with-os-directory=DIR
--with-origin-name=NAME
--with-arch-suffix=SUFFIX
--with-jvm-root-dir=DIR
--with-jvm-jar-dir=DIR
--with-python-dir=DIR
--enable-aot-compile-rpm
ansi
char
and the Win32 A functions natively,
+translating to and from UNICODE when using these functions. If
+unspecified, this is the default.
+
+ unicows
WCHAR
and Win32 W functions natively. Adds
+-lunicows
to libgcj.spec to link with ‘libunicows’.
+unicows.dll needs to be deployed on Microsoft Windows 9X machines
+running built executables. libunicows.a, an open-source
+import library around Microsoft's unicows.dll
, is obtained from
+http://libunicows.sourceforge.net/, which also gives details
+on getting unicows.dll from Microsoft.
+
+ unicode
WCHAR
and Win32 W functions natively. Does not
+add -lunicows
to libgcj.spec. The built executables will
+only run on Microsoft Windows NT and above.
--with-x
--enable-java-awt=PEER(S)
--enable-gtk-cairo
Note that each --enable
option has a corresponding
---disable
option and that each --with
option has a
-corresponding --without
option.
+
--enable-java-gc=TYPE
--disable-gtktest
--disable-glibtest
--with-libart-prefix=PFX
--with-libart-exec-prefix=PFX
--disable-libarttest