Opened 5 years ago

Last modified 5 years ago

#50270 new defect

digikam @4.9.0 fails to build: lensfun.h:2506:5: error: templates must have C++ linkage

Reported by: till.paala@… Owned by: jgosmann (Jan Gosmann)
Priority: Normal Milestone:
Component: ports Version: 2.3.4
Keywords: Cc: cgilles (HumanDynamo)
Port: digikam

Description (last modified by ryandesign (Ryan Schmidt))

Tried to install digikam on a OS X 10.11 installation. I seem to have opencv 2 installed port outdated gives among others: opencv 2.4.11_0 < 3.1.0_1 so it seems #48081 doesn't apply to me. In the beginning I got a message about ecmconfig.cmake missing, but I could come around this by installing kde-extra-cmake-modules. Still have a failure in the compilation with following errors:

:info:build /opt/local/include/lensfun/lensfun.h:2506:5: error: templates must have C++ linkage
:info:build     template<typename T> static void ModifyColor_Vignetting_PA (
:info:build     ^~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/include/lensfun/lensfun.h:2508:5: error: templates must have C++ linkage
:info:build     template<typename T> static void ModifyColor_DeVignetting_PA (
:info:build     ^~~~~~~~~~~~~~~~~~~~
:info:build 2 errors generated.

See log file attached.

Attachments (2)

digikam-main.log (16.0 MB) - added by till.paala@… 5 years ago.
complete-digikam-main.log (22.7 MB) - added by till.paala@… 5 years ago.

Change History (9)

Changed 5 years ago by till.paala@…

Attachment: digikam-main.log added

comment:1 Changed 5 years ago by till.paala@…

Sorry, the text from the log should look like this:

:info:build /opt/local/include/lensfun/lensfun.h:2506:5: error: templates must have C++ linkage
:info:build     template<typename T> static void ModifyColor_Vignetting_PA (
:info:build     ^~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/include/lensfun/lensfun.h:2508:5: error: templates must have C++ linkage
:info:build     template<typename T> static void ModifyColor_DeVignetting_PA (
:info:build     ^~~~~~~~~~~~~~~~~~~~
:info:build 2 errors generated.

comment:2 Changed 5 years ago by ryandesign (Ryan Schmidt)

Description: modified (diff)
Port: digikam added
Summary: digikam 4.9.0 fails to builddigikam @4.9.0 fails to build: lensfun.h:2506:5: error: templates must have C++ linkage

digikam depends on opencv. If opencv is outdated, MacPorts should upgrade it before attempting to build digikam. The log you attached is incomplete (missing lots of the beginning, up to somewhere in the build phase).

comment:3 Changed 5 years ago by ryandesign (Ryan Schmidt)

Cc: caulier.gilles@… added
Owner: changed from macports-tickets@… to jan@…

comment:4 Changed 5 years ago by cgilles (HumanDynamo)

patch applied on git/master 5.0.0 (not 4.14.0) but can be backported easily :

https://quickgit.kde.org/?p=digikam.git&a=commit&h=0f159981176faa6da701f112bfe557b79804d468

Gilles Caulier

Changed 5 years ago by till.paala@…

Attachment: complete-digikam-main.log added

comment:5 in reply to:  2 Changed 5 years ago by till.paala@…

Replying to ryandesign@…:

digikam depends on opencv. If opencv is outdated, MacPorts should upgrade it before attempting to build digikam. The log you attached is incomplete (missing lots of the beginning, up to somewhere in the build phase).

Sorry, complete log attached, I didn't understand that Konsole on OS X shows only about 15 Mb of the file.

comment:6 in reply to:  4 Changed 5 years ago by till.paala@…

Replying to caulier.gilles@…:

patch applied on git/master 5.0.0 (not 4.14.0) but can be backported easily :

https://quickgit.kde.org/?p=digikam.git&a=commit&h=0f159981176faa6da701f112bfe557b79804d468

Gilles Caulier

Ok, so could I just remove the three lines manually on my computer and rebuild?

comment:7 Changed 5 years ago by till.paala@…

After changing the file according to the patch above digikam compiles fine. But I can't start the program. drkonqi crashes and produces a bug report.

This is probably already a different ticket (?) or am I ommissing something?

Note: See TracTickets for help on using tickets.