Skip to content

Building On Mac OS X

grundprinzip edited this page Feb 8, 2013 · 1 revision

Since you need a recent compiler to build HYRISE the built-in g++ and clang++ wont work. The easiest way is to install a recent gcc via homebrew as described above. The next problem is that there might be an incompatibility with Boost. Since Boost is compiled via homebrew using the default compiler, building HYRISE with a newer version of GCC can lead to unwanted segmentation faults.

The easiest way to circumvent this problem is to built a custom Boost version that uses the new GCC and is installed into a different directory.

First download and extract boost to a directory of your choice. Now execute the following commands to build Boost:

bootstrap.sh --prefix=/usr/local/hyrise --without-icu
b2 --prefix=/usr/local/hyrise -d2 -j3 --layout=use-system-layout --user-config=user-config.jam threading=multi --without-python install

The important options are --prefix that tells where to put the installed boost and the --user-config to specify the compiler. The file user-config.jam should contain the following lines:

using darwin : : g++-4.7 ;

This sets the g++ for the darwin toolchain to a value that you specify (which is in this case the homebrew build of the gcc). Now you have to update your settings in your settings.mk like this

LINKER_DIR=/usr/local/hyrise/lib
PROJECT_INCLUDE=/usr/local/hyrise/include

To include the newly build boost before everything else.

Clone this wiki locally