Building on a non-BeOS platform =============================== We currently support these non-BeOS platforms: * Linux * FreeBSD * Mac OS X Intel (gcc 4 builds only) To build Haiku on a non-BeOS platform you must first check out and build the cross-compiler. The easiest method for doing so is to check it out in the parent directory of your Haiku repository: svn checkout svn://svn.berlios.de/haiku/buildtools/trunk buildtools You should now have a 'buildtools' folder that contains folders named 'binutils', 'gcc', and 'jam' among others. Several other tools are required to build these build tools or are used by Haiku's build system itself: * gcc and the binutils (as, ld, etc., required by gcc) * make (GNU make) * bison * flex and lex (usually a mini shell script invoking flex) * makeinfo (part of texinfo, needed for building gcc 4 only) * autoheader (part of autoconf, needed for building gcc) * gawk * yasm (http://www.tortall.net/projects/yasm/wiki/Download) Whether they are installed can be tested for instance by running them in the shell with the "--version" parameter. On Mac OS X a case-sensitive file system is required for the Haiku tree (Disk Utility can be used to create a case-sensitive disk image of at least 3GB size), and the following darwin ports need to be installed: * expat * gawk * gettext * libiconv * gnuregex * cdrtools (for mkisofs used to create the bootable CD-ROM image) Building Jam ============ Change to the buildtools folder and we will start to build 'jam' which is a requirement for building Haiku. Run the following commands to generate and install the tool: cd buildtools/jam make sudo ./jam0 install Building binutils ================= The binutils used by Haiku will be automatically generated according to the initial configuration of the Haiku source and placed in the 'generated/cross-tools' directory of Haiku. Before generating the tools you must consider the version required, there are essentially two choices: * 2.95: Creates BeOS compatible binaries * 4.x: Incompatible with BeOS, but theoretically more efficient binaries Unless there is a pressing need, choose 2.95 as the latter option can cause frequent build issues. The commands for configuration are, GCC 2.95 -------- cd haiku ./configure --build-cross-tools ../buildtools/ GCC 4.x ------- cd haiku ./configure --build-cross-tools-gcc4 x86 ../buildtools/ The process can take quite some time, but when it finishes the build system is fully configured and you are ready to compile your first Haiku image. Instructions on how to build Haiku can be found in the section Building in the 'ReadMe' document.