LizardByte / libdisplaydevice

C++ library to modify display devices

Home Page:https://docs.lizardbyte.dev/projects/libdisplaydevice

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Overview

GitHub Workflow Status (CI) Codecov GitHub stars

About

LizardByte has the full documentation hosted on Read the Docs.

libdisplaydevice is a WIP library that provides a common interface for interacting with display devices. It is intended to be used by applications that need to interact with displays, such as screen capture software, remote desktop software, and video players.

Initial support is planned for Windows, but could be expanded to other platforms in the future.

Build

Clone

Ensure git is installed and run the following:

git clone https://github.com/lizardbyte/libdisplaydevice.git --recurse-submodules
cd libdisplaydevice
mkdir build
cd build

Windows

Requirements

First you need to install MSYS2, then startup "MSYS2 UCRT64" and execute the following commands.

Update all packages:

pacman -Syu

Install dependencies:

pacman -S \
  doxygen \
  mingw-w64-ucrt-x86_64-binutils \
  mingw-w64-ucrt-x86_64-cmake \
  mingw-w64-ucrt-x86_64-graphviz \
  mingw-w64-ucrt-x86_64-ninja \
  mingw-w64-ucrt-x86_64-toolchain \
  mingw-w64-ucrt-x86_64-boost \
  mingw-w64-ucrt-x86_64-nlohmann-json

Build

Warning

Ensure you are in the build directory created during the clone step earlier before continuing.

cmake -G Ninja ..
ninja

Test

tests\test_libdisplaydevice

Support

Our support methods are listed in our LizardByte Docs.

About

C++ library to modify display devices

https://docs.lizardbyte.dev/projects/libdisplaydevice

License:GNU Affero General Public License v3.0


Languages

Language:C++ 98.0%Language:CMake 1.6%Language:Shell 0.2%Language:C 0.1%Language:Python 0.1%