After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 787475 - gegl expects lensfun.h in the normal include path
gegl expects lensfun.h in the normal include path
Status: RESOLVED INVALID
Product: GEGL
Classification: Other
Component: build
git master
Other Linux
: Normal normal
: ---
Assigned To: Default Gegl Component Owner
Default Gegl Component Owner
Depends on:
Blocks:
 
 
Reported: 2017-09-09 14:50 UTC by Stefan Husmann
Modified: 2017-09-14 19:23 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Stefan Husmann 2017-09-09 14:50:11 UTC
Under Arch linux the build of gele from git fails. It turns out that this is due to the fact that lensfun.h is not in the normal include path under Arch Linux - it is under /usr/include/lensfun/lensfun.h  

I fixed this by applying a simple patch

diff --git a/operations/workshop/external/lens-correct.c b/operations/workshop/external/lens-correct.c
index ac8070a3..141ee304 100644
--- a/operations/workshop/external/lens-correct.c
+++ b/operations/workshop/external/lens-correct.c
@@ -19,7 +19,7 @@
  */
 
 #include "config.h"
-#include <lensfun.h>
+#include <lensfun/lensfun.h>
 #include <glib/gi18n-lib.h>

But the question is, is lensfun.h supposed to stay there? Or should this better be fixed in the Makefile.am?
Comment 1 Øyvind Kolås (pippin) 2017-09-13 12:41:13 UTC
On a debian system the output of $ pkg-config lensfun --cflags # is:

-I/usr/include/lensfun -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include

And the build system of GEGL used pkg-config to figure out the cflags, what does this return on arch?
Comment 2 Stefan Husmann 2017-09-14 19:21:26 UTC
pkg-config lensfun --cflags gives me quite the same as in debian,

-I/usr/include/lensfun -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include

but only if use the official lensfun package from Arch. So your answer
put me onto the right direction to the solution.

Formerly building gegl from git against the stable version did not work,
so I had the inofficial lensfun-git package from AUR installed - and
that one has a broken lensfun.pc file in it. On my system it looks like this:

prefix=/home/haawda/paketierung/not_maintained_by_me/lensfun-git/pkg/lensfun-git/usr
bindir=/home/haawda/paketierung/not_maintained_by_me/lensfun-git/pkg/lensfun-git/usr/bin
libdir=/home/haawda/paketierung/not_maintained_by_me/lensfun-git/pkg/lensfun-git/usr/lib
includedir=/home/haawda/paketierung/not_maintained_by_me/lensfun-git/pkg/lensfun-git/usr/include
datadir=/home/haawda/paketierung/not_maintained_by_me/lensfun-git/pkg/lensfun-git/usr/share
docdir=/home/haawda/paketierung/not_maintained_by_me/lensfun-git/pkg/lensfun-git/usr/share/doc/lensfun

Name: lensfun
Description: A photographic lens database and access library
Version: 0.3.2.0
Requires.private: glib-2.0
Libs: -L${libdir} -llensfun
Cflags: -I${includedir} -I${includedir}/lensfun

i.e. the variables include the path where I build my stuff.

With lensfun from the official repos gegl builds fine.

I think I should file this against lensfun. Thanks for listening and
best regards. The report can be closed.

Stefan Husmann