@c Copyright (C) 1988-2026 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.

@node Header Dirs
@chapter Standard Header File Directories

@code{GCC_INCLUDE_DIR} means the same thing for native and cross.  It is
where GCC stores its private include files, and also where GCC
stores the fixed include files.  A cross compiled GCC runs
@code{fixincludes} on the header files in @file{$(tooldir)/include}.
(If the cross compilation header files need to be fixed, they must be
installed before GCC is built.  If the cross compilation header files
are already suitable for GCC, nothing special need be done).

@code{GPLUSPLUS_INCLUDE_DIR} means the same thing for native and cross.  It
is where @command{g++} looks first for header files.  The C++ library
installs only target independent header files in that directory.

@code{LOCAL_INCLUDE_DIR} is used only by native compilers.  GCC
doesn't install anything there.  It is normally
@file{/usr/local/include}.  This is where local additions to a packaged
system should place header files.

@code{CROSS_INCLUDE_DIR} is used only by cross compilers.  GCC
doesn't install anything there.

@code{TOOL_INCLUDE_DIR} is used for both native and cross compilers.  It
is the place for other packages to install header files that GCC will
use.  For a cross-compiler, this is the equivalent of
@file{/usr/include}.  When you build a cross-compiler,
@code{fixincludes} processes any header files in this directory.
