Skip to content

Latest commit

 

History

History
85 lines (72 loc) · 1.94 KB

BUILDING.md

File metadata and controls

85 lines (72 loc) · 1.94 KB

Dependencies

  • CMake 3.3
  • OpenCL 1.2
  • OpenGL 3.3
  • GLFW 3.2
  • DevIL 1.8.0
  • Nanogui (submodule)

Prebuilt DevIL binaries for Windows included.

Windows

  • Install an OpenCL SDK for libs and headers
    • Intel OpenCL SDK recommended for kernel debugging support on Intel CPUs
    • Alternatives include NVIDIA CUDA Toolkit, AMD APP SDK
  • Setup submodules:
    git submodule update --init --recursive
    
  • Generate build files:
    mkdir build
    cd build
    cmake .. -G "Visual Studio 15 2017 Win64"
    
  • Build using Visual Studio solution (set Fluctus as StartUp project)
  • Run in debug mode for CPU kernel debugging, release mode for performance

Mac

  • Install Xcode Command Line Tools (for clang)
  • Apple OpenCL framework will be used for OpenCL support
  • Setup submodules:
    git submodule update --init --recursive
    
  • Setup dependencies:
    # Option 1: Nix (tested July 2022 on Apple M2):
    nix-shell ./shell.nix
    
    # Option 2: Homebrew:
    brew install glfw3 devil
    
  • Compile:
    mkdir build
    cd build && cmake ..
    make
    
  • Run (in project root):
    ./build/fluctus
    
  • Alternatively, JetBrains CLion can compile the project directly using CMakeLists.txt (working directory has to be changed in IDE settings)

Linux (Debian / Ubuntu)

  • Install OpenCL SDK (CUDA Toolkit / Intel OpenCL SDK / AMD APP SDK)
  • Install dependencies:
    sudo apt-get install build-essential opencl-headers libdevil-dev libglfw3-dev xorg-dev
    
  • Setup submodules:
    git submodule update --init --recursive
    
  • Compile:
    mkdir build
    cd build && cmake ..
    make
    
  • Run (in project root):
    ./build/fluctus
    
  • Alternatively, JetBrains CLion can compile the project directly using CMakeLists.txt (working directory has to be changed in IDE settings)