.. _pocl-install: ============ Installation ============ Requirements ------------ In order to build pocl, you need the following support libraries and tools: * Latest released version of LLVM & Clang * development files for LLVM & Clang + their transitive dependencies (e.g. libclang-dev, libllvm-dev, zlib1g-dev, libtinfo-dev...) * GNU make or ninja * libtool dlopen wrapper files (e.g. libltdl3-dev in Debian) * pthread (should be installed by default) * hwloc v1.0 or newer (e.g. libhwloc-dev) * pkg-config * cmake There are Dockerfiles available for a few most common linux distributions in ``tools/docker``, looking into them might be helpful. Clang / LLVM Notes ------------------ **IMPORTANT NOTE!** Some targets (TCE and possibly HSA) require that you compile & build LLVM with RTTI on. It can be enabled on cmake command line, as follows: cmake .... -DLLVM_ENABLE_RTTI=ON -DLLVM_ENABLE_EH=ON .... Supported LLVM versions ~~~~~~~~~~~~~~~~~~~~~~~~ Note that pocl aims to support **the latest LLVM version** at the time of pocl release, **plus the previous** LLVM version. All older LLVM versions are supported with "best effort" basis; there might not be build bots continuously testing the code base nor anyone fixing their possible breakage. Configure & Build ----------------- CMake version 2.8.12 or higher is required. The build+install is the usual CMake way:: cd mkdir build cd build cmake [-D