1. Abhängigkeiten installieren
Darktable braucht viele Pakete. Installiere sie mit pacman oder yay (für AUR):
sudo pacman -Syu # System updaten
sudo pacman -S base-devel cmake git intltool libjpeg-turbo libpng libtiff libxml2 sqlite3 curl openexr exiv2 lensfun librsvg libgphoto2 openmp libwebp libsecret pugixml lua libxslt osm-gps-map graphicsmagick opencl-headers opencl-icd-loader
yay -S libraw # Aus AUR, für RAW-Verarbeitung
- Für OpenCL: Stelle sicher, dass deine GPU-Treiber installiert sind (z. B.
mesafür AMD/Intel,nvidiafür NVIDIA). - Optional:
gtk3für UI,llvmfür Clang-Integration.
2. Repository klonen
Klone das offizielle Git-Repo:
git clone https://github.com/darktable-org/darktable.git
cd darktable
- Wechsle zu einem stabilen Branch, falls du nicht die neueste Entwicklung willst:
git checkout release-4.6.x(checkegit branch -rfür Optionen).
3. Build vorbereiten
Erstelle ein Build-Verzeichnis und konfiguriere mit CMake:
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local # Release für Performance, /usr/local für lokale Installation
- Optionen:
-DUSE_OPENCL=ONfür GPU-Unterstützung,-DUSE_LUA=ONfür Lua-Scripts. - Wenn Fehler auftreten (z. B. fehlende Libs), installiere die fehlenden Pakete und wiederhole.
4. Kompilieren und installieren
make -j$(nproc) # Paralleles Kompilieren (nutzt alle CPU-Kerne)
sudo make install
makekompiliert,installkopiert die Binärdateien.- Starte darktable mit
/usr/local/bin/darktable(oder füge/usr/local/binzu deinem PATH hinzu).
5. Testen und entwickeln
- Starte darktable und teste deine Änderungen (z. B. in
src/iop/ashift.c). - Für Debugging: Verwende
gdboder fügeprintf-Statements hinzu. - Wenn du OpenCL testest, checke die Logs in der Konsole.