Configure Options

As of February 2010, Haiku's `configure` has several interesting options. These options are briefly explained by running `configure --help` on the command line. Below, additional information will be discussed as a complement to the usage output text.

  • --build-cross-tools <arch>

    Compile the build tools for one of the following <arch> [x86|x86_gcc2|x86_64|ppc|arm|m68k|mips]. "x86_gcc2" will build gcc2 build tools. Using gcc2 is only a concern if you require binary compatibility with BeOS. All other architectures use gcc7. To build a supported hybrid combination you can repeat the --build-cross-tools for the secondary/additional architectures. Be sure to specify --cross-tools-source when using these flags.
  • --cross-tools-prefix <prefix>

    Point to pre-built binaries of the build tools. This can be used after the cross-tools have been compiled with a previous configure --build-cross-tools .... The option can be repeated to specify the secondary build tools for a Hybrid.
  • --cross-tools-source <build tools dir>

    Point to the buildtools (toolchain source code) for Haiku. This only needs specified once when using --build-cross-tools. A note about <build tools dir>.
  • --distro-compatibility <level>

    The distribution's level of compatibility with the official Haiku distribution. The generated files will contain the respective trademarks accordingly. Currently supported values are: official -- the official Haiku distribution. compatible -- a Haiku Compatible (tm) distro. default -- any other distro (default value).
  • --include-3rdparty

    Certain programs are capable of being built at the same time as Haiku. This option triggers the ability to build all the software inside HAIKU_TOP/3rdparty, assuming the software itself supports it.
  • --target-arch <arch>

    This option is supported when building on Haiku only. <arch> is one of [x86|x86_gcc2|x86_64|ppc|arm|m68k|mips] and specifies the architecture of a compiler installed in the system to be used for building Haiku. The option can be repeated to specify the secondary compiler for a Hybrid build.
  • --use-gcc-pipe

    Instructs the build system to pass some information through system pipes instead of writing everything as temporary files. As a result, the build system will utilize additional memory but shorten the time required to build Haiku.
  • --no-xattr

    Forces the buildsystem to not use native xattrs at all. An emulation layer will be used instead. Use of this option is not recommended, the configure script autodetects xattr support and sets up the build to use xattrs only when available.

  • --no-full-xattr

    Forces the buildsystem to use xattrs only in a limited way, as is the case for filesystems which have arbitrary limits on attributes. Use of this option is not recommended, the configure script autodetects xattr support and sets up the build to work correctly according to the filesystem used.

  • --update

    In changeset 34867, the ability to re-run configure with the options from a previous run was implemented.
  • -j<n>

    This option allows the cross-tools to be built with similar jobs. Currently this only works when the gcc7.x cross-tools are being built. See this haiku-development mailing list post for more information.

Examples of configure

Examples for various common use cases are given in the "Compiling Haiku" section of the Building Haiku page.

Some Notes

  • <build tools dir>

    This refers to the directory that contains the buildtools source code. It is usually represented by a relative path from where you are running `configure`. Typically this is "../buildtools". Refer to Getting the sourcecode if you don't have a copy of the buildtools yet.