darktable-org / darktable-org/darktable

Git master: GMIC dependency : Change required dependencies or change CMAKE default?

Open
#21,610 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
13.1k
Forks
1.4k
Avg merge
22h 14m
Merged PRs (30d)
198

Description

Is there an existing issue for this?
  • I checked and did not find my issue in the already reported ones
Describe the bug

If I download git master and configure then the cmake command stops and states:

CMake Error at src/CMakeLists.txt:672 (message):
  No suitable GMIC development files found, please install them or disable
  GMIC support

But GMIC development files are not stated as a required dependency.

Steps to reproduce
  1. git clone --recurse-submodules https://github.com/darktable-org/darktable.git
  2. cd darktable
  3. mkdir build && cd build
  4. cmake -DCMAKE_INSTALL_PREFIX=/home/magnus/test -DCMAKE_BUILD_TYPE=Release ..
  5. cmake ends and complains about missing dependency.
CMake Error at src/CMakeLists.txt:672 (message):
  No suitable GMIC development files found, please install them or disable
  GMIC support

A workaround is to configure cmake with: -DUSE_GMIC:BOOL=OFF

But GMIC development is not listed as a mandatory requirement in README.md.

Required dependencies (minimum version):

    CMake 3.18
    GTK 3.24.15
    GLib 2.56
    SQLite 3.26
    libcurl 7.56
    libpng 1.5.0 (for PNG import & export, also for reading LUT files in PNG format)
    Exiv2 0.27.2 (but at least 0.27.4 built with ISO BMFF support needed for Canon CR3 raw import)
    potrace 1.16
    pugixml 1.8

Required dependencies (no version requirement):

    Lensfun (for automatic lens correction) (Note: alpha 0.3.95 and git master branch are not supported)
    libjpeg (both the original IJG library and API-compatible ones, such as libjpeg-turbo, will work)
    LibTIFF (for TIFF import & export)
    Little CMS 2
Expected behavior

Darktable documentation README.md should either state GMIC development files as a required dependeny (and keep USE_GMIC:BOOL=ON) or cmake should be configured with USE_GMIC:BOOL=OFF, as default.

Logfile | Screenshot | Screencast

No response

Commit

b0bd5b4081, but this issue has been aroundfor a while (at least several months)-

Where did you obtain darktable from?

self compiled

darktable version

release-5.7.0-140-gb0bd5b4081

What OS are you using?

Linux

What is the version of your OS?

Debian 13.6

Describe your system

gcc (Debian 14.2.0-19) 14.2.0

Are you using OpenCL GPU in darktable?

None

If yes, what is the GPU card and driver?

No response

Please provide additional context if applicable. You can attach files too, but might need to rename to .txt or .zip

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing src/CMakeLists.txt around line 672 and the dependency list in README.md, then reproduce the configuration with the documented command and with USE_GMIC disabled. Determine whether GMIC development files should be documented as required or whether GMIC support should default to off; done means a fresh documented configuration no longer fails unexpectedly.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, cmake
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.