Bug 323284

Summary: Compile 3.3.0 failed - lensfuniface.cpp undefined reference
Product: [Applications] digikam Reporter: StreamThreader <kvantarium>
Component: Portability-CompilationAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: andred, caulier.gilles, flmahe2
Priority: NOR    
Version: 3.3.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 4.0.0
Sentry Crash Report:
Attachments: digiKam running with lensfun 0.2.7

Description StreamThreader 2013-08-08 09:39:41 UTC
Compile under slackware 14.0 x86_64

log file: ftp://ifconfig.com.ua/incoming/log/digikam.log
Comment 1 caulier.gilles 2013-08-08 09:48:13 UTC
Sound like you use different version of lensfun (as header files come from an older lensfun version and lib bin files from a more recent version)

Do you use lensfun 0.2.7 ?

Gilles Caulier
Comment 2 StreamThreader 2013-08-08 10:00:49 UTC
Version lensfun 0.2.7, header file from this version, i recompile and reinstall lensfun but error not gone.
Comment 3 StreamThreader 2013-08-08 10:02:02 UTC
Files from packege:
usr/include/lensfun.h
usr/share/
usr/share/lensfun/
usr/share/lensfun/slr-contax.xml
usr/share/lensfun/compact-nikon.xml
usr/share/lensfun/compact-sigma.xml
usr/share/lensfun/slr-sigma.xml
usr/share/lensfun/compact-pentax.xml
usr/share/lensfun/6x6.xml
usr/share/lensfun/compact-ricoh.xml
usr/share/lensfun/slr-schneider.xml
usr/share/lensfun/mil-sony.xml
usr/share/lensfun/slr-pentax.xml
usr/share/lensfun/slr-nikon.xml
usr/share/lensfun/compact-sony.xml
usr/share/lensfun/compact-olympus.xml
usr/share/lensfun/slr-olympus.xml
usr/share/lensfun/compact-canon.xml
usr/share/lensfun/compact-fujifilm.xml
usr/share/lensfun/slr-konica-minolta.xml
usr/share/lensfun/slr-panasonic.xml
usr/share/lensfun/slr-leica.xml
usr/share/lensfun/compact-panasonic.xml
usr/share/lensfun/compact-casio.xml
usr/share/lensfun/generic.xml
usr/share/lensfun/compact-kodak.xml
usr/share/lensfun/slr-sony.xml
usr/share/lensfun/mil-nikon.xml
usr/share/lensfun/mil-samsung.xml
usr/share/lensfun/slr-samsung.xml
usr/share/lensfun/compact-konica-minolta.xml
usr/share/lensfun/rf-leica.xml
usr/share/lensfun/slr-hasselblad.xml
usr/share/lensfun/mil-canon.xml
usr/share/lensfun/slr-ussr.xml
usr/share/lensfun/mil-panasonic.xml
usr/share/lensfun/slr-tokina.xml
usr/share/lensfun/compact-leica.xml
usr/share/lensfun/slr-canon.xml
usr/share/lensfun/mil-olympus.xml
usr/share/lensfun/slr-tamron.xml
usr/lib64/
usr/lib64/liblensfun.so
usr/lib64/pkgconfig/
usr/lib64/pkgconfig/lensfun.pc
usr/doc/
usr/doc/lensfun-0.2.7/
usr/doc/lensfun-0.2.7/manual/
usr/doc/lensfun-0.2.7/manual/tab_a.png
usr/doc/lensfun-0.2.7/manual/dir_417636b0694695296d5af3eb7f0630e3.html
usr/doc/lensfun-0.2.7/manual/globals_enum.html
usr/doc/lensfun-0.2.7/manual/filldb.html
usr/doc/lensfun-0.2.7/manual/gpl.html
usr/doc/lensfun-0.2.7/manual/tabs.css
usr/doc/lensfun-0.2.7/manual/ftv2folderclosed.png
usr/doc/lensfun-0.2.7/manual/ftv2link.png
usr/doc/lensfun-0.2.7/manual/dynsections.js
usr/doc/lensfun-0.2.7/manual/files.html
usr/doc/lensfun-0.2.7/manual/functions_vars.html
usr/doc/lensfun-0.2.7/manual/tfun_8cpp-example.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibTCA.html
usr/doc/lensfun-0.2.7/manual/license.html
usr/doc/lensfun-0.2.7/manual/el_mount.html
usr/doc/lensfun-0.2.7/manual/structlfModifier.html
usr/doc/lensfun-0.2.7/manual/globals_defs.html
usr/doc/lensfun-0.2.7/manual/ftv2folderopen.png
usr/doc/lensfun-0.2.7/manual/globals_eval.html
usr/doc/lensfun-0.2.7/manual/bdwn.png
usr/doc/lensfun-0.2.7/manual/classes.html
usr/doc/lensfun-0.2.7/manual/nav_g.png
usr/doc/lensfun-0.2.7/manual/dbsearch.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibDistortion.html
usr/doc/lensfun-0.2.7/manual/globals.html
usr/doc/lensfun-0.2.7/manual/ftv2splitbar.png
usr/doc/lensfun-0.2.7/manual/credits.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibCrop.html
usr/doc/lensfun-0.2.7/manual/pages.html
usr/doc/lensfun-0.2.7/manual/bc_s.png
usr/doc/lensfun-0.2.7/manual/open.png
usr/doc/lensfun-0.2.7/manual/doxygen.css
usr/doc/lensfun-0.2.7/manual/group__Correction.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibCrop-members.html
usr/doc/lensfun-0.2.7/manual/group__Mount.html
usr/doc/lensfun-0.2.7/manual/tab_b.png
usr/doc/lensfun-0.2.7/manual/el_camera.html
usr/doc/lensfun-0.2.7/manual/globals_type.html
usr/doc/lensfun-0.2.7/manual/dbformat.html
usr/doc/lensfun-0.2.7/manual/structlfCamera-members.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibTCA-members.html
usr/doc/lensfun-0.2.7/manual/structlfDatabase-members.html
usr/doc/lensfun-0.2.7/manual/group__Camera.html
usr/doc/lensfun-0.2.7/manual/ftv2ns.png
usr/doc/lensfun-0.2.7/manual/group__Database.html
usr/doc/lensfun-0.2.7/manual/lensfun_8h.html
usr/doc/lensfun-0.2.7/manual/tab_s.png
usr/doc/lensfun-0.2.7/manual/basearch.html
usr/doc/lensfun-0.2.7/manual/ftv2lastnode.png
usr/doc/lensfun-0.2.7/manual/functions.html
usr/doc/lensfun-0.2.7/manual/dir_d44c64559bbebec7f509842c48db8b23.html
usr/doc/lensfun-0.2.7/manual/structlfMount.html
usr/doc/lensfun-0.2.7/manual/database.html
usr/doc/lensfun-0.2.7/manual/ftv2doc.png
usr/doc/lensfun-0.2.7/manual/jquery.js
usr/doc/lensfun-0.2.7/manual/lensfun_8h_source.html
usr/doc/lensfun-0.2.7/manual/structlfLens.html
usr/doc/lensfun-0.2.7/manual/structlfModifier-members.html
usr/doc/lensfun-0.2.7/manual/addlens.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibVignetting.html
usr/doc/lensfun-0.2.7/manual/globals_func.html
usr/doc/lensfun-0.2.7/manual/samplecode.html
usr/doc/lensfun-0.2.7/manual/ftv2plastnode.png
usr/doc/lensfun-0.2.7/manual/ftv2mo.png
usr/doc/lensfun-0.2.7/manual/structlfCamera.html
usr/doc/lensfun-0.2.7/manual/ftv2mnode.png
usr/doc/lensfun-0.2.7/manual/ftv2blank.png
usr/doc/lensfun-0.2.7/manual/lgpl.html
usr/doc/lensfun-0.2.7/manual/nav_f.png
usr/doc/lensfun-0.2.7/manual/programming.html
usr/doc/lensfun-0.2.7/manual/functions_func.html
usr/doc/lensfun-0.2.7/manual/structlfDatabase.html
usr/doc/lensfun-0.2.7/manual/closed.png
usr/doc/lensfun-0.2.7/manual/modules.html
usr/doc/lensfun-0.2.7/manual/ftv2vertline.png
usr/doc/lensfun-0.2.7/manual/cc-by-ca.html
usr/doc/lensfun-0.2.7/manual/example_8c-example.html
usr/doc/lensfun-0.2.7/manual/nav_h.png
usr/doc/lensfun-0.2.7/manual/structlfParameter-members.html
usr/doc/lensfun-0.2.7/manual/structlfParameter.html
usr/doc/lensfun-0.2.7/manual/ftv2cl.png
usr/doc/lensfun-0.2.7/manual/index.html
usr/doc/lensfun-0.2.7/manual/el_lens.html
usr/doc/lensfun-0.2.7/manual/structlfLens-members.html
usr/doc/lensfun-0.2.7/manual/annotated.html
usr/doc/lensfun-0.2.7/manual/ftv2node.png
usr/doc/lensfun-0.2.7/manual/structlfMount-members.html
usr/doc/lensfun-0.2.7/manual/doxygen.png
usr/doc/lensfun-0.2.7/manual/examples.html
usr/doc/lensfun-0.2.7/manual/elem_calibration.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibFov-members.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibFov.html
usr/doc/lensfun-0.2.7/manual/group__Auxiliary.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibVignetting-members.html
usr/doc/lensfun-0.2.7/manual/tmod_8cpp-example.html
usr/doc/lensfun-0.2.7/manual/ftv2mlastnode.png
usr/doc/lensfun-0.2.7/manual/tab_h.png
usr/doc/lensfun-0.2.7/manual/group__Lens.html
usr/doc/lensfun-0.2.7/manual/structlfLensCalibDistortion-members.html
usr/doc/lensfun-0.2.7/manual/ftv2pnode.png
usr/doc/lensfun-0.2.7/manual/addcamera.html
usr/doc/lensfun-0.2.7/gpl-3.0.txt
usr/doc/lensfun-0.2.7/cc-by-sa-3.0.txt
usr/doc/lensfun-0.2.7/README
usr/doc/lensfun-0.2.7/lgpl-3.0.txt
Comment 4 caulier.gilles 2013-08-08 10:26:41 UTC
This is a non-sense. It can compile but non link. If it compile this will mean that methods are declared in headers files and FOUND. Linking fails because it don't found relevant methods in library bin files...

Gilles Caulier
Comment 5 StreamThreader 2013-08-08 10:30:58 UTC
In slackbuild script exist striped function:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
  | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
This may damage file?
Comment 6 caulier.gilles 2013-08-08 10:39:53 UTC
No idea. I don't use slackware distro.

Gilles Caulier
Comment 7 caulier.gilles 2013-08-08 11:23:12 UTC
Created attachment 81606 [details]
digiKam running with lensfun 0.2.7

I uninstalled lensfun 0.2.6 from my computer and compiled installed lensfun 0.2.7 instead.

No problem to compile, link, and run digiKam with it.

Gilles Caulier
Comment 8 StreamThreader 2013-08-08 11:31:51 UTC
If found how to resolve, posted it here.
Comment 9 flo 2013-08-17 16:49:58 UTC
I have similar problem with lensfun when compile under Slackware 14.
I resolve it by,  rebuilding lensfun with CMake instead configure (maybe unnecessary), and by applying this patch on Digikam :

diff -Nur digikam-3.3.0.orig/core/digikam/CMakeLists.txt digikam-3.3.0/core/digikam/CMakeLists.txt
--- digikam-3.3.0.orig/core/digikam/CMakeLists.txt	2013-08-05 00:40:53.000000000 +0200
+++ digikam-3.3.0/core/digikam/CMakeLists.txt	2013-08-17 11:14:59.000000000 +0200
@@ -119,9 +119,17 @@
 
 # For Contents Aware Resizer and Lens auto-correction tools.
 IF(GLIB2_FOUND)
-    TARGET_LINK_LIBRARIES(digikamcore ${GLIB2_LIBRARIES} ${liblqr_LIBS} ${liblensfun_LIBS})
+    TARGET_LINK_LIBRARIES(digikamcore ${GLIB2_LIBRARIES})
 ENDIF(GLIB2_FOUND)
 
+IF(LENSFUN_FOUND)
+   TARGET_LINK_LIBRARIES(digikamcore ${LENSFUN_LIBRARIES})
+ENDIF(LENSFUN_FOUND)
+
+IF(LQR-1_FOUND)
+   TARGET_LINK_LIBRARIES(digikamcore ${liblqr_LIBS})
+ENDIF(LQR-1_FOUND)   
+
 SET_TARGET_PROPERTIES(digikamcore PROPERTIES VERSION 3.0.0 SOVERSION 3)
 
 IF(WIN32)
Comment 10 Andre 2013-10-01 07:42:25 UTC
I can confirm the same issue occured for me when attempting to compile digikam 3.4.0 against lensfun 0.2.7 on centos 6.

I applied the diff provided by flo in Comment 9 and was able to successfully complete the build. If possible please consider re-opening this bug and applying the patch from comment 9.
Comment 11 caulier.gilles 2014-02-20 06:20:41 UTC
Git commit 83630d93f49a576ee3559764deb72370f0ca7b11 by Gilles Caulier.
Committed on 20/02/2014 at 06:19.
Pushed by cgilles into branch 'master'.

fix lensfun linkage with right rules
FIXED-IN: 4.0.0

M  +9    -1    digikam/CMakeLists.txt
M  +2    -1    tests/CMakeLists.txt

http://commits.kde.org/digikam/83630d93f49a576ee3559764deb72370f0ca7b11
Comment 12 Cruceru Calin-Cristian 2014-02-20 20:17:37 UTC
Hi,

Firstly thank you again ( we've talked on IRC already ) for your prompt
reply. The very first steps are pretty hard for a beginner so this support
means a lot.

Secondly, I managed to build it without error, but still, I have some
problems: When running it, directly from qtcreator or from command line, I
get a couple of warnings ( I guess these are not actually errors ) :
http://pastebin.com/16jwB5cJ . From the research I've done, it has to do
with those .rc files it cannot find. Also, I read that it may be because of
some paths I don't have stored in the variables used by the installation.

I'm not sure, but I guess that this warnings are the cause for the fact
that when it launches, it does not have all the menus in the toolbar.


So, what's the reason for not detecting those .rc files ?

Thank you!


2014-02-20 8:20 GMT+02:00 Gilles Caulier <caulier.gilles@gmail.com>:

> https://bugs.kde.org/show_bug.cgi?id=323284
>
> Gilles Caulier <caulier.gilles@gmail.com> changed:
>
>            What    |Removed                     |Added
>
> ----------------------------------------------------------------------------
>    Version Fixed In|                            |4.0.0
>          Resolution|UPSTREAM                    |FIXED
>       Latest Commit|                            |
> http://commits.kde.org/digi
>                    |
>  |kam/83630d93f49a576ee355976
>                    |                            |4deb72370f0ca7b11
>
> --- Comment #11 from Gilles Caulier <caulier.gilles@gmail.com> ---
> Git commit 83630d93f49a576ee3559764deb72370f0ca7b11 by Gilles Caulier.
> Committed on 20/02/2014 at 06:19.
> Pushed by cgilles into branch 'master'.
>
> fix lensfun linkage with right rules
> FIXED-IN: 4.0.0
>
> M  +9    -1    digikam/CMakeLists.txt
> M  +2    -1    tests/CMakeLists.txt
>
> http://commits.kde.org/digikam/83630d93f49a576ee3559764deb72370f0ca7b11
>
> --
> You are receiving this mail because:
> You are the assignee for the bug.
> _______________________________________________
> Digikam-devel mailing list
> Digikam-devel@kde.org
> https://mail.kde.org/mailman/listinfo/digikam-devel
>
Comment 13 caulier.gilles 2014-02-21 05:34:21 UTC
Christian,

Your running problem are nothing to see with Lensfun linkage (the topic of this entry).

RC files are not found on your system. Probably it's a wrong settings of running environment (PATH). And yes, RC host toolbar and menu configuration...

Gilles Caulier