Installation du pilote graphique Vulkan.

Raspberry Pi : Version 4B 4Go Distribution : Raspberry Pi OS (32-bit) with desktop - 2020-08-20 Lien : https://blogs.igalia.com/apinheiro/2020/06/v3dv-quick-guide-to-build-and-run-some-demos/

1/ Installation des dépendances.

pi@minetest:~ $sudo apt-get install libxcb-randr0-dev libxrandr-dev \ libxcb-xinerama0-dev libxinerama-dev libxcursor-dev \ libxcb-cursor-dev libxkbcommon-dev xutils-dev \ xutils-dev libpthread-stubs0-dev libpciaccess-dev \ libffi-dev x11proto-xext-dev libxcb1-dev libxcb-*dev \ bison flex libssl-dev libgnutls28-dev x11proto-dri2-dev \ x11proto-dri3-dev libx11-dev libxcb-glx0-dev \ libx11-xcb-dev libxext-dev libxdamage-dev libxfixes-dev \ libva-dev x11proto-randr-dev x11proto-present-dev \ libclc-dev libelf-dev git build-essential mesa-utils \ libvulkan-dev ninja-build libvulkan1 python-mako \ libdrm-dev libxshmfence-dev libxxf86vm-dev \ python3-mako

2/ Installation des outils de développement pour Python.

pi@minetest:~ $ pip3 install --user meson

3/ Création du répertoire de travail.

pi@minetest:~ $ mkdir -p PILOTE/Vulkan pi@minetest:~ $ cd PILOTE/Vulkan/ pi@minetest:~/PILOTE/Vulkan $

4/ Téléchargement du code source de Mesa.

pi@minetest:~/PILOTE/Vulkan $ git clone https://gitlab.freedesktop.org/apinheiro/mesa.git mesa

5/ Téléchargement du code source de Vulkan.

pi@minetest:~/PILOTE/Vulkan $ cd mesa pi@minetest:~/PILOTE/Vulkan/mesa $ git checkout wip/igalia/v3dv

6/ Configuration de la compilation.

pi@minetest:~/PILOTE/Vulkan/mesa $ ~/.local/bin/meson --prefix /home/pi/local-install --libdir lib -Dplatforms=x11,drm -Dvulkan-drivers=broadcom -Ddri-drivers= -Dgallium-drivers=v3d,kmsro,vc4 -Dbuildtype=debug _build

7/ Compilation.

pi@minetest:~/PILOTE/Vulkan/mesa $ ninja -C _build

8/ Installation.

pi@minetest:~/PILOTE/Vulkan/mesa $ ninja -C _build install pi@minetest:~/PILOTE/Vulkan/mesa $ cd .. pi@minetest:~/PILOTE/Vulkan $

9/ Initialisation de Vulkan.

pi@minetest:~/PILOTE/Vulkan $ export VK_ICD_FILENAMES=/home/pi/local-install/share/vulkan/icd.d/broadcom_icd.armv7l.json

10/ Téléchargement du code source des exemples.

pi@minetest:~/PILOTE/Vulkan $ sudo apt-get install libassimp-dev pi@minetest:~/PILOTE/Vulkan $ git clone --recursive https://github.com/SaschaWillems/Vulkan.git sascha-willems pi@minetest:~/PILOTE/Vulkan $ cd sascha-willems pi@minetest:~/PILOTE/Vulkan/sascha-willems $

11/ Création du répertoire de compilation.

pi@minetest:~/PILOTE/Vulkan/sascha-willems $ mkdir build; cd build pi@minetest:~/PILOTE/Vulkan/sascha-willems/build $

12/ Configuration de la compilation.

pi@minetest:~/PILOTE/Vulkan/sascha-willems/build $ cmake -DCMAKE_BUILD_TYPE=Debug ..

13/ Compilation.

pi@minetest:~/PILOTE/Vulkan/sascha-willems/build $ make

14/ Téléchargement des assets.

pi@minetest:~/PILOTE/Vulkan/sascha-willems/build $ cd .. pi@minetest:~/PILOTE/Vulkan/sascha-willems $ python3 download_assets.py

15/ Lancement d'un exemple : Gears.

pi@minetest:~/PILOTE/Vulkan/sascha-willems $ cd build/bin/ pi@minetest:~/PILOTE/Vulkan/sascha-willems/build/bin $ ./gears