-
Notifications
You must be signed in to change notification settings - Fork 0
Building appleseed on Linux
This page will guide you through the steps required to build appleseed on Linux.
In case of troubles, make sure to have a look at our Building appleseed on Linux FAQ.
To build appleseed, the following packages are required:
- boost
- zlib
- libpng
- imath
- openexr
- xerces-c++
The following packages are optional:
- HDF5, if you want appleseed to support the Alembic file format
- Alembic, if you want appleseed to support the Alembic file format
- Qt 4.8 or later in the 4.x series, if you want to build appleseed.studio (the graphical user interface)
- Python 2 or 3, if you want to build appleseed.python (the Python bindings)
- OpenImageIO, if you want appleseed to support OSL
- LLVM 3.3 or later, if you want appleseed to support OSL
- OpenShadingLanguage, if you want appleseed to support OSL
Important: appleseed will not build using Qt 5.x or later, you do need a 4.x version of Qt.
Open a terminal in the root directory of your appleseed installation and type:
mkdir build
cd build
cmake -DUSE_STATIC_BOOST=OFF
-DUSE_EXTERNAL_ZLIB=ON
-DUSE_EXTERNAL_PNG=ON
-DUSE_EXTERNAL_EXR=ON
-DUSE_EXTERNAL_ALEMBIC=ON
-DUSE_EXTERNAL_XERCES=ON
-DWITH_CLI=ON
-DWITH_STUDIO=ON
-DWITH_TOOLS=ON
-DWITH_PYTHON=ON
-DWITH_ALEMBIC=ON
..
make
-
WITH_CLI=ON
: build appleseed.cli, the command line version of appleseed. -
WITH_STUDIO=ON
: build appleseed.studio, the graphical user interface version of appleseed. -
WITH_TOOLS=ON
: build the various tools that come with appleseed. -
WITH_PYTHON=ON
: build appleseed.python, the Python 2 or Python 3 bindings for appleseed. -
WITH_ALEMBIC=ON
: enable Alembic support in appleseed.
OSL support in appleseed requires a custom build of LLVM and OSL with RTTI enabled. The reason for the custom build is that by default LLVM and OSL disable RTTI, but in appleseed we make use RTTI.
The steps required to enable OSL support are:
- Build OpenImageIO.
- Build LLVM. Using
configure
is recommended as it's easier to get it working. After runningconfigure
, but before runningmake
, make sure to enable RTTI:
configure [options] --prefix=/dir/where/to/install/llvm
export REQUIRES_RTTI=1
make
make install
passing --enable-targets=x86_64 as one of the options will skip building all the other targets (assuming you use a 64 bits OS).
- Build OSL. To enable RTTI, pass
-DENABLERTTI=ON
to CMake. - Build appleseed. Enable OSL by passing
-DWITH_OSL=ON
to CMake.
If you find linking errors like: undefined reference to `typeinfo for [classname]', please check the RTTI settings for both LLVM and OSL.