build error with QT 5.7.1

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

build error with QT 5.7.1

Simon Frei
I get the following error trying to build 6.1.0 with qt 5.7.1:

.../core/libs/widgets/mai
nview/dxmlguiwindow.cpp: In member function 'void
Digikam::DXmlGuiWindow::regist
erPluginsActions()':
.../core/libs/widgets/mainview/dxmlguiwindow.cpp:247:29: error:
'checkAmbiguousShortcuts' was not declared in this scope
     checkAmbiguousShortcuts();
                             ^
core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/build.make:62:
recipe for target
'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlguiwindow.cpp.o'
failed
make[2]: ***
[core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlguiwindow.cpp.o]
Error 1
CMakeFiles/Makefile2:2304: recipe for target
'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all' failed
make[1]: ***
[core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

As far as I am aware 5.7.1 should still be supported, correct? Any idea
how to fix it?

Thanks in advance for any help!
Reply | Threaded
Open this post in threaded view
|

Re: build error with QT 5.7.1

Gilles Caulier-4
Hi Simon,

I don't think that problem is relevant of Qt 5.7.1. I know that
Qt5.6.3 still supported.

The checkAmbiguousShortcuts() method is defined in parent class of
DXmlGuiWindow :

https://cgit.kde.org/kxmlgui.git/tree/src/kxmlguiwindow.h#n346

... from KF5XmlGui framework. The right question is : which minimal
KF5 version is required to support this method from KF5 ?

The KF5 API doc has this information :

https://api.kde.org/frameworks/kxmlgui/html/classKXmlGuiWindow.html#aea610ce67bb0af4e1ed727222370cad4

=> 5.3.0. So it's a very old method in fact. We are in KF5::5.57 currently.

So i suspect a linking problem on your computer, as for exemple a
wrong export of this method. here readelf is informative :

[gilles@localhost lib64]$ pwd
/usr/lib64
[gilles@localhost lib64]$ readelf -Ws libKF5XmlGui.so.5.57.0 | grep
checkAmbiguousShortcuts
 1878: 00000000000cd0c0  2704 FUNC    GLOBAL DEFAULT   12
_ZN13KXmlGuiWindow23checkAmbiguousShortcutsEv
[gilles@localhost lib64]$

So the function is here and available.

Another point is to check if dxmlguiwindow.o is well linked with
libKF5XmlGui.so through digikamwidgetscore object. Here, using "export
VERBOSE=1" before to run make in digikam build directory will be
instructive.

Best

Gilles

Le mar. 30 avr. 2019 à 00:39, Simon Frei <[hidden email]> a écrit :

>
> I get the following error trying to build 6.1.0 with qt 5.7.1:
>
> .../core/libs/widgets/mai
> nview/dxmlguiwindow.cpp: In member function 'void
> Digikam::DXmlGuiWindow::regist
> erPluginsActions()':
> .../core/libs/widgets/mainview/dxmlguiwindow.cpp:247:29: error:
> 'checkAmbiguousShortcuts' was not declared in this scope
>      checkAmbiguousShortcuts();
>                              ^
> core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/build.make:62:
> recipe for target
> 'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlguiwindow.cpp.o'
> failed
> make[2]: ***
> [core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlguiwindow.cpp.o]
> Error 1
> CMakeFiles/Makefile2:2304: recipe for target
> 'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all' failed
> make[1]: ***
> [core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all] Error 2
> make[1]: *** Waiting for unfinished jobs....
>
> As far as I am aware 5.7.1 should still be supported, correct? Any idea
> how to fix it?
>
> Thanks in advance for any help!
Reply | Threaded
Open this post in threaded view
|

Re: build error with QT 5.7.1

Maik Qualmann
In reply to this post by Simon Frei
This feature is provided by KF5::KXmlGuiWindow, but not until version 5.30.
Which KF5 version do you use?

Maik

Am Dienstag, 30. April 2019, 00:39:07 CEST schrieb Simon Frei:

> I get the following error trying to build 6.1.0 with qt 5.7.1:
>
> .../core/libs/widgets/mai
> nview/dxmlguiwindow.cpp: In member function 'void
> Digikam::DXmlGuiWindow::regist
> erPluginsActions()':
> .../core/libs/widgets/mainview/dxmlguiwindow.cpp:247:29: error:
> 'checkAmbiguousShortcuts' was not declared in this scope
>      checkAmbiguousShortcuts();
>                              ^
> core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/build.make:62:
> recipe for target
> 'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlguiwin
> dow.cpp.o' failed
> make[2]: ***
> [core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlguiwin
> dow.cpp.o] Error 1
> CMakeFiles/Makefile2:2304: recipe for target
> 'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all' failed
> make[1]: ***
> [core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all] Error 2
> make[1]: *** Waiting for unfinished jobs....
>
> As far as I am aware 5.7.1 should still be supported, correct? Any idea
> how to fix it?
>
> Thanks in advance for any help!




Reply | Threaded
Open this post in threaded view
|

Re: build error with QT 5.7.1

Simon Frei
That's indeed the problem: The KF5 version is 5.28. The error occurred
on my homeserver, which runs debian stable and I occasionally build
digikam from source there, as the packaged version is ancient. Luckily
this method was introduced after 6.0.0, so I'll keep using that on the
homeserver in the meantime (new debian stable will be coming out soonish
hopefully).
Thanks for your help!

On 30/04/2019 07:57, Maik Qualmann wrote:

> This feature is provided by KF5::KXmlGuiWindow, but not until version 5.30.
> Which KF5 version do you use?
>
> Maik
>
> Am Dienstag, 30. April 2019, 00:39:07 CEST schrieb Simon Frei:
>> I get the following error trying to build 6.1.0 with qt 5.7.1:
>>
>> .../core/libs/widgets/mai
>> nview/dxmlguiwindow.cpp: In member function 'void
>> Digikam::DXmlGuiWindow::regist
>> erPluginsActions()':
>> .../core/libs/widgets/mainview/dxmlguiwindow.cpp:247:29: error:
>> 'checkAmbiguousShortcuts' was not declared in this scope
>>      checkAmbiguousShortcuts();
>>                              ^
>> core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/build.make:62:
>> recipe for target
>> 'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlguiwin
>> dow.cpp.o' failed
>> make[2]: ***
>> [core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlguiwin
>> dow.cpp.o] Error 1
>> CMakeFiles/Makefile2:2304: recipe for target
>> 'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all' failed
>> make[1]: ***
>> [core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all] Error 2
>> make[1]: *** Waiting for unfinished jobs....
>>
>> As far as I am aware 5.7.1 should still be supported, correct? Any idea
>> how to fix it?
>>
>> Thanks in advance for any help!
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: build error with QT 5.7.1

Maik Qualmann
I think you can comment out the function for you, it should have no side
effect.

Maik

Am Dienstag, 30. April 2019, 09:23:21 CEST schrieb Simon Frei:

> That's indeed the problem: The KF5 version is 5.28. The error occurred
> on my homeserver, which runs debian stable and I occasionally build
> digikam from source there, as the packaged version is ancient. Luckily
> this method was introduced after 6.0.0, so I'll keep using that on the
> homeserver in the meantime (new debian stable will be coming out soonish
> hopefully).
> Thanks for your help!
>
> On 30/04/2019 07:57, Maik Qualmann wrote:
> > This feature is provided by KF5::KXmlGuiWindow, but not until version
> > 5.30.
> > Which KF5 version do you use?
> >
> > Maik
> >
> > Am Dienstag, 30. April 2019, 00:39:07 CEST schrieb Simon Frei:
> >> I get the following error trying to build 6.1.0 with qt 5.7.1:
> >>
> >> .../core/libs/widgets/mai
> >> nview/dxmlguiwindow.cpp: In member function 'void
> >> Digikam::DXmlGuiWindow::regist
> >> erPluginsActions()':
> >> .../core/libs/widgets/mainview/dxmlguiwindow.cpp:247:29: error:
> >> 'checkAmbiguousShortcuts' was not declared in this scope
> >>
> >>      checkAmbiguousShortcuts();
> >>      
> >>                              ^
> >>
> >> core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/build.make:62:
> >> recipe for target
> >> 'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlgui
> >> win dow.cpp.o' failed
> >> make[2]: ***
> >> [core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/mainview/dxmlgui
> >> win dow.cpp.o] Error 1
> >> CMakeFiles/Makefile2:2304: recipe for target
> >> 'core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all' failed
> >> make[1]: ***
> >> [core/libs/widgets/CMakeFiles/digikamwidgetscore_src.dir/all] Error 2
> >> make[1]: *** Waiting for unfinished jobs....
> >>
> >> As far as I am aware 5.7.1 should still be supported, correct? Any idea
> >> how to fix it?
> >>
> >> Thanks in advance for any help!