Skip to content
Patricio Gonzalez Vivo edited this page Oct 11, 2021 · 24 revisions

1. Install dependencies

Ubuntu

sudo apt install git cmake xorg-dev libglu1-mesa-dev liblo-dev

For video support (using FFMpeg library LIBAV), also do:

sudo apt install ffmpeg libavcodec-dev libavcodec-extra libavfilter-dev libavfilter-extra libavdevice-dev libavformat-dev libavutil-dev libswscale-dev libv4l-dev libjpeg-dev libpng-dev libtiff-dev

RaspberryPi OS (with X11)

sudo apt install git cmake xorg-dev libglu1-mesa-dev liblo-dev

RaspberryPi OS (without X11)

sudo apt install git cmake libegl1-mesa-dev libgbm-dev libgles2-mesa-dev liblo-dev

If you are using a Raspberry PI 4 make sure on your /boot/config.txt you have the following lines present and/or un-commented:

dtoverlay=vc4-fkms-v3d
max_framebuffers=2
hdmi_force_hotplug=1

Fedora

sudo dnf install git gcc-c++ cmake mesa-libGLU-devel glfw-devel libXi-devel libXxf86vm-devel liblo-devel
sudo yum install libXdamage-devel 

For video support (using FFMpeg library LIBAV), also do:

sudo dnf install ffmpeg ffmpeg-devel

Arch

sudo pacman -S glu glfw-x11 liblo

For video support (using FFMpeg library LIBAV), also do:

sudo pacman -S ffmpeg

2. Clone repository and submodules

git clone https://github.com/patriciogonzalezvivo/glslViewer.git
cd glslViewer
git submodule init
git submodule update

3. Compile

For any Any Linux X11 enviroment like Gnome/KDE/Awesome/XFCE/etc (this will force the use of GLFW 3.0)

mkdir build
cd build
cmake ..
make
sudo make install

For no X11 context (it uses GBM by default or BROADCOM on older VC drivers on Raspberry PI that are not v4)

mkdir build
cd build
cmake -DNO_X11=TRUE ..
make
sudo make install

Note: Newer RaspberryPi distribution do have BROADCOM drivers but work only on GBM for that use -DFORCE_GBM=TRUE instead