On 25/07/2023 03:41, Jack Bowling wrote:

On 2023-07-24 17:22, tony Hamilton wrote:


On 25/07/2023 00:57, Jack Bowling wrote:
On 2023-07-24 16:35, Patrick Shanahan wrote:
* tony Hamilton <shaky.st...@ntlworld.com> [07-24-23 19:28]:
In a moment of irrationality I migrated my Mint install from 21.1 to 21.2 about 15 hours ago - and quickly found that I no longer had any darktable. I started to compile from 4.4.2 source, using the process which worked well a day earlier. The number of compile errors - almost all missing dependencies
- was huge. There is one I cannot resolve; the error message states:

"Make Error at cmake/modules/LibFindMacros.cmake:272 (message):
   REQUIRED PACKAGE NOT FOUND

   We could not find development headers for Glib.  Do you have the necessary    dev package installed? This package is REQUIRED and you need to install it    or adjust CMake configuration in order to continue building darktable.

   Relevant CMake configuration variables:

     Glib_INCLUDE_DIR=<not found>
     GlibConfig_INCLUDE_DIR=<not found>
     Glib_LIBRARY=<not found>

   You may use CMake GUI, cmake -D or ccmake to modify the values. Delete    CMakeCache.txt to discard all values and force full re-detection if
   necessary.

Call Stack (most recent call first):
   cmake/modules/FindGlib.cmake:40 (libfind_process)
   src/CMakeLists.txt:276 (find_package)"

Synaptic cannot find a package called Gib or Glib-dev or their development headers or any of these CMake configuration variables. How do I work around this? Synaptic finds a large number of packages with names of the form
lib*glib-dev; are any of these relevant? Which ones?
gee, you updated to a newer system version and your installed applications were not updated.  that's a distro problem or a sysop who didn't properly
update  :(

possibly bad search parameters.  I have:
   glib2-devel
   glibc-devel
but on openSUSE Tumbleweed

but I searched "rpm -qa *devel* | grep -i glib"
I cannot tell you the synaptic parameters.

and you quite possibly will have more devel packages missing. you
referred earlier to a command that updated/installed apps necessary for
building.  did you do that?

$ apt-cache search libglib
libglib-object-introspection-perl - Perl bindings for gobject-introspection libraries
libglib-perl - interface to the GLib and GObject libraries
libglib2.0-0 - GLib library of C routines
libglib2.0-bin - Programs for the GLib library
libglib2.0-data - Common files for GLib library
libglib2.0-dev - Development files for the GLib library
libglib2.0-dev-bin - Development utilities for the GLib library
libglib2.0-doc - Documentation files for the GLib library
libglibmm-2.4-1v5 - C++ wrapper for the GLib toolkit (shared libraries)
libglibmm-2.4-dev - C++ wrapper for the GLib toolkit (development files)
libglibmm-2.4-doc - C++ wrapper for the GLib toolkit (documentation)
libglib-testing-0-0 - test library providing test harnesses and mock classes libglib-testing-0-dev - Development files for the libglib-testing library
libglib-testing-doc - Documentation for the libglib-testing library
libglib2.0-cil - CLI binding for the GLib utility library 2.12
libglib2.0-cil-dev - CLI binding for the GLib utility library 2.12
libglib2.0-tests - GLib library of C routines - installed tests
libglib3.0-cil - CLI binding for the GLib library of C routines
libglib3.0-cil-dev - CLI binding for the GLib utility library 2.12
libglibd-2.0-0 - GLib library of C routines - D bindings
libglibd-2.0-dev - GLib library of C routines - development files for D
libglibmm-2.68-1 - C++ wrapper for the GLib toolkit (shared libraries)
libglibmm-2.68-dev - C++ wrapper for the GLib toolkit (development files)
libglibmm-2.68-doc - C++ wrapper for the GLib toolkit (documentation)
librust-glib-sys-dev - FFI bindings to libglib-2.0 - Rust source code

Mint is still based on Ubuntu, as far as I know. The file you need is libglib2.0-dev, the 6th file returned in the above query.
On Ubuntu, that would be installed by:

sudo apt install libglib2.0-dev

Any other needed dependencies would also be installed.

Jack
____________________________________________________________________________
darktable user mailing list
to unsubscribe send a mail to darktable-user+unsubscr...@lists.darktable.org

Thanks for this. At the risk of pushing my luck, could you possible comment on this subsequent error:

"CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find CURL (missing: CURL_LIBRARY CURL_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)   /usr/share/cmake-3.22/Modules/FindCURL.cmake:181 (find_package_handle_standard_args)
  src/CMakeLists.txt:421 (find_package)"

Synaptic tells me that I have CURL Package version 7.81.0-1ubuntu1.13 installed, so I don't understand what the compile error is.

It appears you are missing the development libraries which are needed for building code. In Ubuntu, these files are suffixed with the dev label.

Here is the apt-cache query return for libcurl:

$ apt-cache search libcurl
libcurl3-gnutls - easy-to-use client-side URL transfer library (GnuTLS flavour)
libcurl4 - easy-to-use client-side URL transfer library (OpenSSL flavour)
libcurl4-doc - documentation for libcurl
libcurl4-gnutls-dev - development files and documentation for libcurl (GnuTLS flavour) libcurl4-openssl-dev - development files and documentation for libcurl (OpenSSL flavour)
.... (more returns not shown)

The ones you need should be the last two dev files. Installing both the GnuTLS and the OpenSSL flavours would be recommended.

Note that it would be a rinse and repeat procedure for any other missing dev files.

Jack

____________________________________________________________________________
darktable user mailing list
to unsubscribe send a mail to darktable-user+unsubscr...@lists.darktable.org

Again, thanks for your help - much appreciated.

I do have an 'attitude-issue' with building from source as a task in general in Linux: in my experience it fails 99% of the time (unless you are repeating a previous compile, then the statistic is less). Compiling darktable is a great example. Given my level of skill and understanding , coupled with the non-specific nature of the error messages generated by CMake, it is impossible for somebody like me to determine precisely what package dependencies are missing from my instance of Linux. Result: compile is bound to fail, until somebody like me gets help from somebody like you.

But behind all this frustration there is somebody (somebodies) who know EXACTLY what the dependencies are. It would transform the compile success rate for somebody like me if those dependencies were completely documented somewhere, or, better still, if there was a command which I could copy/paste that would act to meet all those dependencies. Yes, I know that there are such commands in the Read.md file on GitHub for darktable: they are thoroughly out of date for my distro - nothing for Ubuntu 22 or later; nothing for Mint after version 18, which is now about 6 years old. So those commands are not effective: I invoked them before starting this build of dt 4.4.2 under Mint 21.2
____________________________________________________________________________
darktable user mailing list
to unsubscribe send a mail to darktable-user+unsubscr...@lists.darktable.org

Reply via email to