Getting Started - Linux-Alex/GEEP GitHub Wiki

Prerequisites

To build and run this project on a Linux system, ensure the following dependencies are installed:

On Linux

  1. CMake

    • CMake is required to configure and generate the build system.
    • Install CMake using your package manager:
      sudo apt update
      sudo apt install cmake
      
    • Verify the installation:
      cmake --version
      
  2. Qt (Version 6 or 5)

    • Qt is required for the GUI and core functionality of the project.
    • Download and install Qt from the official Qt website or use your package manager:
      sudo apt install qt6-base-dev qt6-tools-dev-tools
      
    • Alternatively, if you prefer Qt 5:
      sudo apt install qt5-default qt5-tools
      
    • Ensure the CMAKE_PREFIX_PATH in the CMakeLists.txt file points to the correct Qt installation path (e.g., /opt/Qt/6.8.2/gcc_64/lib/cmake).
  3. CUDA Toolkit

  4. C++ Compiler

    • A C++ compiler supporting C++17 is required.
    • Install g++ or clang++:
      sudo apt install g++
      
    • Verify the installation:
      g++ --version
      
  5. Git (Optional)

    • Git is required if you plan to clone the repository or contribute to the project.
    • Install Git:
      sudo apt install git
      
    • Verify the installation:
      git --version
      
  6. Build Tools

    • Install essential build tools:
      sudo apt install build-essential
      

Environment Setup

  1. Clone the repository (if not already done):
    git clone https://github.com/Linux-Alex/GEEP
    cd GEEP
    
  2. Configure the project with CMake:
    mkdir build
    cd build
    cmake ..
    
  3. Build the project:
    make
    
  4. Run the executable:
    ./GEEP --help
    

On Windows

Work in progress ...

On macOS

Work in progress ...

Troubleshooting

  • If CMake cannot find Qt, ensure the CMAKE_PREFIX_PATH is correctly set in the CMakeLists.txt file.
  • If CUDA is not detected, verify that the CUDA Toolkit is installed and the PATH and LD_LIBRARY_PATH environment variables are correctly configured.