Project

General

Profile

Bug #12350

Struggling to build dt for windows

Added by pass 712 5 months ago. Updated about 1 month ago.

Status:
New
Priority:
Low
Assignee:
-
Category:
-
Target version:
-
Start date:
10/03/2018
Due date:
% Done:

0%

Affected Version:
git master branch
System:
Windows
bitness:
64-bit
hardware architecture:
amd64/x86

Description

Hi everyone,

following the instructions in build.txt I tried to build dt for windows using MSYS2. I managed to set up MSYS2, libs an so on but failed to build darktable via

$ cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/opt/darktable ../.

cmake runs until it complains that it can't find GTK3:

:
:
-- Found Glib
-- Checking for module 'gtk+-3.0'
-- No package 'gtk+-3.0' found
CMake Error at C:/msys64/mingw64/share/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find GTK3 (missing: GTK3_INCLUDE_DIRS GTK3_LIBRARIES) (Required
is at least version "3.14")
Call Stack (most recent call first):
C:/msys64/mingw64/share/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindGTK3.cmake:58 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
src/CMakeLists.txt:252 (find_package)
:
:

=============

This is what pacman says:

$ pacman -Ss gtk3
mingw32/mingw-w64-i686-gtk3 3.24.1-1 [Installiert]
GObject-based multi-platform GUI toolkit (v3) (mingw-w64)
mingw32/mingw-w64-i686-gtkmm3 3.22.2-1
C++ bindings for gtk3 (mingw-w64)
mingw32/mingw-w64-i686-spice-gtk 0.33-1
GTK3 widget for SPICE clients (mingw-w64)
mingw32/mingw-w64-i686-webkitgtk3 2.4.11-6
GTK+ Web content engine library (mingw-w64)
mingw64/mingw-w64-x86_64-gtk3 3.24.1-1 [Installiert]
GObject-based multi-platform GUI toolkit (v3) (mingw-w64)
mingw64/mingw-w64-x86_64-gtkmm3 3.22.2-1 [Installiert]
C++ bindings for gtk3 (mingw-w64)
mingw64/mingw-w64-x86_64-spice-gtk 0.35-1 [Installiert]
GTK3 widget for SPICE clients (mingw-w64)
mingw64/mingw-w64-x86_64-webkitgtk3 2.4.11-6
GTK+ Web content engine library (mingw-w64)

===========

I tried to skip GTK3 and cmake stops again at lensfun:

:
:
-- Found Glib
-- Checking for one of the modules 'libsoup-2.4;libsoup2'
-- Checking for one of the modules 'libsoup-2.2;libsoup2'
CMake Error at C:/msys64/mingw64/share/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find LENSFUN (missing: LENSFUN_INCLUDE_DIR)
Call Stack (most recent call first):
C:/msys64/mingw64/share/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
cmake/modules/FindLensFun.cmake:37 (find_package_handle_standard_args)
src/CMakeLists.txt:302 (find_package)
:
:

==================

... which is installed, too:
$ pacman -Ss lensfun
mingw32/mingw-w64-i686-lensfun 0.3.95-1
Database of photographic lenses and a library that allows advanced access to the database (mingw-w64)
mingw64/mingw-w64-x86_64-lensfun 0.3.95-1 [Installiert]
Database of photographic lenses and a library that allows advanced access to the database (mingw-w64)

=============================

It seems as if all (mingw-w64-x86_64-)prefixed packages can't be found. Am I missing something ? Maybe an additional path information ?

Logfiles for the latter test (lensfun) are added below.

Hoping for help
Jürgen

CMakeError.log Magnifier (2.64 KB) pass 712, 10/03/2018 05:00 PM

CMakeOutput.log Magnifier (15.5 KB) pass 712, 10/03/2018 05:00 PM

CMakeError.log Magnifier - After downgrading lensfun (19.7 KB) pass 712, 12/10/2018 06:48 PM

CMakeOutput.log Magnifier - After downgrading lensfun (240 KB) pass 712, 12/10/2018 06:48 PM

darktable_bt_1Y41TZ.txt Magnifier (9.08 KB) pass 712, 12/21/2018 08:54 PM

History

#1 Updated by Peter Budai 3 months ago

You need to downgrade lensfun library, as the 3.95 is not compatible with darktable
Download the prior version of lensfun:
http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-lensfun-0.3.2-4-any.pkg.tar.xz

And install with:
pacman -U mingw-w64-x86_64-lensfun-0.3.2-4-any.pkg.tar.xz

Then do a clean build

#2 Updated by Peter Budai 2 months ago

And one more thing: Jurgen, which shell are you using: MSYS2 or MINGW64 or MINGW32?

#3 Updated by pass 712 2 months ago

Hi Peter,

thanks for your help!

I downgraded lensfun and started build from scratch (original CMakesList.txt) but as it seems nothing has changed.

I'm using the msys2-Shell.

Logfiles are added.

Jürgen

#4 Updated by Peter Budai 2 months ago

Jurgen, you should use the MINGW64 shell.

You use the MSYS2 shell for installing and updating packages.
You use MINGW64 to build native Windows applications.

I'll update the instruction to be clear.

#5 Updated by pass 712 2 months ago

Hi Peter,

cool, build is running now ! Thanks for the information.

There is one issue left: cmake stopped in the last step (cmake --build . --target install) with this error:
:
:
:
CMake Error at src/cmake_install.cmake:150 (file):
file INSTALL cannot find
"C:/msys64/mingw64/bin/../lib/GraphicsMagick-1.3.29/modules-Q8/coders".
Call Stack (most recent call first):
cmake_install.cmake:38 (include)

make: *** [Makefile:86: install] Fehler 1
:
:
:

I checked and found GraphicsMagick-1.3.30 installed on my computer. I then changed line 150 in cmake_install.cmake to version 1.3.30 and started cmake again. Cmake completed without errors. I could start darktable from the mingw64-shell, saw the lighttable view but then it crashed. I included the backtrace. Is it due to the incorrect version ?

Thanks for your patience.
Jürgen

#6 Updated by Peter Budai 2 months ago

Jurgen, the hard-coded Graphicsmagick version number has been fixed for a longer time ago in October:
https://github.com/darktable-org/darktable/pull/1769

Pls get the latest source, and also update your MSYS2 system with pacman -Syu
Also make a clean build (aka remove everything from the build directory and start with cmake configure stage)

#7 Updated by pass 712 about 1 month ago

Hi Peter,

sorry for answering so late, was a bit busy in the meantime.
I found some time today, followed your instructions and was able to build succesfully - many thanks !

Ticket can be closed.

Greets Jürgen

Also available in: Atom PDF