Project

General

Profile

Bug #11464

Darktable 2.2.0 don't build on Debian 8.7

Added by Tomás Senabre González 8 months ago. Updated 8 months ago.

Status:
Fixed
Priority:
Low
Assignee:
Category:
Buildsystem
Target version:
Start date:
01/17/2017
Due date:
% Done:

100%

Affected Version:
2.2.0
System:
Debian
bitness:
64-bit
hardware architecture:
amd64/x86

Description

Hello,
I'm having trouble compiling darktable from version 2.2.0

tomy@estacha:~/darktable$ ./build.sh
Darktable build script

Building directory: /home/tomy/darktable/build
Installation prefix: /opt/darktable
Build type: RelWithDebInfo
Build generator: Unix Makefiles
Build tasks: 4

-- Building SSE2-optimized codepaths: ON
-- Found little endian system. Good.
-- Is the target platform supported: 1
-- multiarch triplet detected: x86_64-linux-gnu
CMake Warning at cmake/compiler-versions.cmake:20 (message):
Support for GNU C compiler version 4.9.2 is soft-deprecated. Consider
upgrading to 5.0+
Call Stack (most recent call first):
CMakeLists.txt:154 (include)

CMake Warning at cmake/compiler-versions.cmake:24 (message):
Support for GNU C++ compiler version 4.9.2 is soft-deprecated. Consider
upgrading to 5.0+
Call Stack (most recent call first):
CMakeLists.txt:154 (include)

-- Looking for external programs
-- Found perl
-- Found intltool-merge
-- Found desktop-file-validate
CMake Warning at CMakeLists.txt:324 (find_package):
Could not find a package configuration file provided by "LLVM" (requested
version 3.9) with any of the following names:

LLVMConfig.cmake
llvm-config.cmake
Add the installation prefix of "LLVM" to CMAKE_PREFIX_PATH or set
"LLVM_DIR" to a directory containing one of the above files. If "LLVM"
provides a separate development package or SDK, be sure it has been
installed.

CMake Warning at CMakeLists.txt:353 (message):
Could not find LLVM 3.9+

CMake Warning at CMakeLists.txt:354 (message):
Test-compilation of OpenCL programs can not be done.

-- Test-compilation of OpenCL programs is disabled.
-- Found jsonschema
-- Found xsltproc
-- Found xmllint
-- All external programs found
-- Found msgfmt to convert .po file. Translation enabled
-- Found Glib 2.42.1
-- Found LibXml2: /usr/lib/x86_64-linux-gnu/libxml2.so (found suitable version "2.9.1", minimum required is "2.6")
-- checking for one of the modules 'libsoup-2.2;libsoup2'
-- Found GIO
-- Found LibXml2: /usr/lib/x86_64-linux-gnu/libxml2.so (found version "2.9.1")
-- Found Sqlite3 3.8.7.1
-- Found JsonGlib
-- Found OpenJPEG
-- Found GraphicsMagick
-- Does the compiler support __builtin_cpu_supports(): 1
-- Checking for march=native support
-
checking for one of the modules 'lua52;lua5.2;lua-5.2;lua'
-- Lua support: System library for lua 5.2 not found (to use darktable's version use DDONT_USE_INTERNAL_LUA=Off)
-
Found Pugixml 1.40
-- Map mode: enabled
-- Print mode: enabled
-- building darktable-cmstest with colord support. nice.
--
-- Configuring done
-- Generating done
-- Build files have been written to: /home/tomy/darktable/build
[ 0%] [ 0%] [ 0%] [ 0%] Built target locale_da
Built target locale_cs
Built target locale_ca
Updating version string (git checkout)
[ 0%] Built target locale_de
[ 0%] Built target locale_fr
Version string: 2.2.0
[ 0%] Built target locale_es
[ 0%] Built target create_version_gen
[ 1%] Built target locale_he
[ 1%] Built target locale_it
[ 1%] Built target locale_hu
[ 1%] Built target locale_ja
[ 1%] [ 1%] Built target locale_nl
[ 1%] Built target locale_sk
[ 1%] Built target locale_pl
Built target locale_ru
[ 3%] [ 3%] Built target locale_sl
Built target locale_uk
[ 3%] Built target locale_sv
[ 3%] Built target generate_metadata
[ 3%] [ 3%] [ 3%] Built target generate_authors_h
[ 3%] Checking validity of external/rawspeed/data/cameras.xml
Built target darktable.appdata_file
Checking validity of data/darktableconfig.xml
[ 5%] [ 5%] Built target validate_darktableconfig_xml
Generating darktable.desktop
[ 5%] /home/tomy/darktable/src/external/rawspeed/data/cameras.xml validates
Checking validity of noiseprofiles.json
[ 5%] Built target validate_cameras_xml
CMake Error: cmake version 3.0.2
Usage: /usr/bin/cmake -E [command] [arguments ...]
Available commands:
chdir dir cmd [args]... - run command in a given directory
compare_files file1 file2 - check if file1 is same as file2
copy file destination - copy file to destination (either file or directory)
copy_directory source destination - copy directory 'source' content to directory 'destination'
copy_if_different in-file out-file - copy file if input has changed
echo [string]... - displays arguments as text
echo_append [string]... - displays arguments as text but no new line
environment - display the current environment
make_directory dir - create a directory
md5sum file1 [...] - compute md5sum of files
remove [-f] file1 file2 ... - remove the file(s), use -f to force it
remove_directory dir - remove a directory and its contents
rename oldname newname - rename a file or directory (on one volume)
tar [cxt][vfz][cvfj] file.tar [file/dir1 file/dir2 ...]
- create or extract a tar or zip archive
sleep <number>... - sleep for given number of seconds
time command [args] ... - run command and return elapsed time
touch file - touch a file.
touch_nocreate file - touch a file but do not create it.
Available on UNIX only:
create_symlink old new - create a symbolic link new -> old

data/CMakeFiles/validate_noiseprofiles_json.dir/build.make:50: recipe for target 'data/CMakeFiles/validate_noiseprofiles_json' failed
make2: * [data/CMakeFiles/validate_noiseprofiles_json] Error 1
CMakeFiles/Makefile2:6694: recipe for target 'data/CMakeFiles/validate_noiseprofiles_json.dir/all' failed
make1:
[data/CMakeFiles/validate_noiseprofiles_json.dir/all] Error 2
make1:
Se espera a que terminen otras tareas....
[ 5%] Built target testcompile_opencl_kernels
[ 5%] Generating darktablerc.html
[ 5%] Built target darktablerc.html_file
Merging translations into /home/tomy/darktable/build/data/darktable.desktop.
[ 5%] Checking validity of darktable.desktop
[ 5%] Built target validate_darktable_desktop
Makefile:137: recipe for target 'all' failed
make: *
[all] Error 2

Associated revisions

Revision f376aa84
Added by Roman Lebedev 8 months ago

Revert "CMake: set LC_ALL too when running jsonschema". Fixes #11464

This reverts commit 4af2cdeb418cca4e993d76bd0341a9e1973561a0.
This reverts commit 450a5da31a1ed0d3004e813bc5ea986c307b9e9d.

Let's hope https://github.com/Julian/jsonschema/issues/299
will be fixed upstream :)

Revision 00cca00e
Added by Roman Lebedev 8 months ago

Revert "CMake: set LC_ALL too when running jsonschema". Fixes #11464

This reverts commit 4af2cdeb418cca4e993d76bd0341a9e1973561a0.
This reverts commit 450a5da31a1ed0d3004e813bc5ea986c307b9e9d.

Let's hope https://github.com/Julian/jsonschema/issues/299
will be fixed upstream :)

(cherry picked from commit f376aa84aa15d6d85693d745974a001a10c444d1)

History

#1 Updated by Tobias Ellinghaus 8 months ago

Please show the output of make VERBOSE=1

#2 Updated by Tobias Ellinghaus 8 months ago

I think I found the issue: CMake 3.0.2 didn't have the -E env command yet.

#3 Updated by Tobias Ellinghaus 8 months ago

  • Assignee set to Roman Lebedev

#4 Updated by Tomás Senabre González 8 months ago

Hi Tobias,

Thank you very much for your help. I think you're right, it seems like a CMake 3.0.2 didn't have the -E env command yet.

Any ideas?

Regards

tomy@estacha:~/darktable/build$ make VERBOSE=1 > error_make
/home/tomy/darktable/src/external/rawspeed/data/cameras.xml validates
CMake Error: cmake version 3.0.2
Usage: /usr/bin/cmake -E [command] [arguments ...]
Available commands: 
  chdir dir cmd [args]...   - run command in a given directory
  compare_files file1 file2 - check if file1 is same as file2
  copy file destination     - copy file to destination (either file or directory)
  copy_directory source destination   - copy directory 'source' content to directory 'destination'
  copy_if_different in-file out-file  - copy file if input has changed
  echo [string]...          - displays arguments as text
  echo_append [string]...   - displays arguments as text but no new line
  environment               - display the current environment
  make_directory dir        - create a directory
  md5sum file1 [...]        - compute md5sum of files
  remove [-f] file1 file2 ... - remove the file(s), use -f to force it
  remove_directory dir      - remove a directory and its contents
  rename oldname newname    - rename a file or directory (on one volume)
  tar [cxt][vfz][cvfj] file.tar [file/dir1 file/dir2 ...]
                            - create or extract a tar or zip archive
  sleep <number>...         - sleep for given number of seconds
  time command [args] ...   - run command and return elapsed time
  touch file                - touch a file.
  touch_nocreate file       - touch a file but do not create it.
Available on UNIX only:
  create_symlink old new    - create a symbolic link new -> old

make[2]: *** [data/CMakeFiles/validate_noiseprofiles_json] Error 1
make[1]: *** [data/CMakeFiles/validate_noiseprofiles_json.dir/all] Error 2
make: *** [all] Error 2

#5 Updated by Roman Lebedev 8 months ago

  • Status changed from New to Fixed
  • % Done changed from 0 to 100

#6 Updated by Tomás Senabre González 8 months ago

Hello,
I have updated to cmake 3.7.1 and I have also had to update to clang-3.9.1 and llvm-3.9.1
The first time I run build.sh I get an error that asks me to run git:

...
CMake Error at src/external/CMakeLists.txt:9 (message):
  RawSpeed submodule not found.  You probably want to run:

  $ git submodule init

  and then

  $ git submodule update

-- Configuring incomplete, errors occurred!
See also "/home/tomy/darktable/build/CMakeFiles/CMakeOutput.log".
See also "/home/tomy/darktable/build/CMakeFiles/CMakeError.log".

And after following these instructions I get this other error:

...
[  4%] Checking validity of noiseprofiles.json
[  4%] Generating darktablerc
The "cmake -i" wizard mode is no longer supported.
Use the -D option to set cache values on the command line.
Use cmake-gui or ccmake for an interactive dialog.
data/CMakeFiles/validate_noiseprofiles_json.dir/build.make:58: recipe for target 'data/CMakeFiles/validate_noiseprofiles_json' failed
make[2]: *** [data/CMakeFiles/validate_noiseprofiles_json] Error 1
CMakeFiles/Makefile2:7671: recipe for target 'data/CMakeFiles/validate_noiseprofiles_json.dir/all' failed
make[1]: *** [data/CMakeFiles/validate_noiseprofiles_json.dir/all] Error 2
make[1]: *** Se espera a que terminen otras tareas....
[  4%] Built target darktablerc_file
Merging translations into /home/tomy/darktable/build/data/darktable.desktop.
[  4%] Checking validity of darktable.desktop
[  4%] Built target validate_darktable_desktop
Merging translations into /home/tomy/darktable/build/data/darktable.appdata.xml.
CREATED /home/tomy/darktable/build/data/darktable.appdata.xml
[  4%] Built target darktable.appdata_file
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2

#7 Updated by Tomás Senabre González 8 months ago

Sorry, this last compilation error only happens to me with version 2.3.0. I forgot to change the version with the "git checkout" command.
The bugs have been fixed
and with these two updates I can compile without problem darktable until version 2.2.1. But someone should update the wiki ([[https://redmine.darktable.org/projects/darktable/wiki/Building_darktable_22]]) page and add these steps to compile darktable with Debian Jessie:

----------------------- WIKI -----------------------

It is necessary to update the libraries clang and llvm to version 3.9, for this, we edit /etc/apt/sources.lst and we add the following lines:

# 3.9 
deb http://apt.llvm.org/jessie/ llvm-toolchain-jessie-3.9 main
deb-src http://apt.llvm.org/jessie/ llvm-toolchain-jessie-3.9 main

And we execute these commands to add the keys and install the packages:

~$ wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
~$ sudo apt-get install clang-3.9 lldb-3.9 llvm-3.9

Another requirement for compiling Darktable is a higher cmake version than GNU / Debian Jessie has (3.0.2), we will have to uninstall cmake and install the latest version:

~$ sudo apt-get remove cmake cmake-data
~$ wget https://cmake.org/files/v3.7/cmake-3.7.2.tar.gz
~$ tar xvfz cmake-3.7.2.tar.gz
~$ cd cmake-3.7.2
~$ ./configure
~$ make
~$ sudo make install

#8 Updated by Roman Lebedev 8 months ago

Tomás Senabre González wrote:

Sorry, this last compilation error only happens to me with version 2.3.0. I forgot to change the version with the "git checkout" command.
The bugs have been fixed
and with these two updates I can compile without problem darktable until version 2.2.1. But someone should update the wiki ([[https://redmine.darktable.org/projects/darktable/wiki/Building_darktable_22]]) page and add these steps to compile darktable with Debian Jessie:

----------------------- WIKI -----------------------

It is necessary to update the libraries clang and llvm to version 3.9, for this, we edit /etc/apt/sources.lst and we add the following lines:

[...]

Bs, it is completely optional.

And we execute these commands to add the keys and install the packages:

[...]

Another requirement for compiling Darktable is a higher cmake version than GNU / Debian Jessie has (3.0.2), we will have to uninstall cmake and install the latest version:

[...]

Huh, cmake-3.0 is the requirement. Is something still not working with that version?

#9 Updated by Roman Lebedev 8 months ago

  • Target version set to 2.4.0

Also available in: Atom PDF