# OpenVR Samples: CMake build guide. ## Support | Configuration | 32 | 64 | | ----------------------- |:---------:|----------:| | GNU/Linux (gcc 4.8+) | OK | OK | | Windows (msvc 12) | OK | OK | | OSX (clang) | ~ | ~ | ## Dependencies * Qt 5.x * GLEW 1.11+ * SDL2 * OpenVR The only general external dependency is Qt5.
On GNU/Linux, you will need GLEW 1.11 (available on most package manager).
On Windows x64, you will need the SDL2 runtime library. ## Build **Important:**
*you might need to specify Qt5 cmake module path manually when generating the cache for the first time using the __CMAKE_PREFIX_PATH__ macro (see examples below).* We will use the command-line on Unix and [Git Bash](https://git-for-windows.github.io/) on Windows. First, move from the repository root to the samples directory to create a build directory: ``` cd samples mkdir build; cd build ``` Then, depending on your system: ### Unix Generate the CMake cache using Makefile: ``` cmake .. -G Makefile -DCMAKE_PREFIX_PATH=/opt/Qt/5.6/gcc_64/lib/cmake -DCMAKE_BUILD_TYPE=Release ``` To build type: ``` make -j4 ``` ### Windows Generate the CMake cache using MSVC 12 for x64: ``` cmake .. -G "Visual Studio 12 2013 Win64" -DCMAKE_PREFIX_PATH=C:/Qt/5.6/msvc2013_64/lib/cmake ``` Alternatively, you can force the compilation on x86 architectures by using the **PLATFORM** property (*be sure to use the right generator and Qt binaries*): ``` cmake .. -G "Visual Studio 12 2013" -DCMAKE_PREFIX_PATH=C:/Qt/5.6/msvc2013/lib/cmake -DPLATFORM=32 ``` To build, simply type: ``` cmake --build . --target all --config Release ``` *Note : using CMake, the build configuration type (ie. Debug, Release) is set at Build Time with MSVC and at Cache Generation Time with Makefile.* ---