[digikam] [Bug 337921] New: Unable to compile due to pointer type issue in gpcamera

classic Classic list List threaded Threaded
30 messages Options
12
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] New: Unable to compile due to pointer type issue in gpcamera

Cor
https://bugs.kde.org/show_bug.cgi?id=337921

            Bug ID: 337921
           Summary: Unable to compile due to pointer type issue in
                    gpcamera
           Product: digikam
           Version: unspecified
          Platform: Slackware Packages
                OS: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: [hidden email]
          Reporter: [hidden email]

I'm trying to compile digikam from source (starting with 3.1.0 continuing
towards 4.1.0) but every attempt fails on the following issue:

core/utilities/importui/backend/gpcamera.cpp:1668:31: error: request for member
'path' in 'info', which is of pointer type 'GPPortInfo {aka _GPPortInfo*}'
(maybe you meant to use '->' ?)
             plist.append(info.path);

I'm doubting whether this is an actual bug (as it is showing up from 3.1.0
onwards (perhaps earlier) and not a compiler setting.

Not sure what additional information is needed, I'm willing to provide more
information when necessary, but please guide me towards the correct
information.

This appears when compiling using SlackBuild scripting on a Slackware 14.1
system.
uname -a output: 3.10.17-smp #2 SMP Wed Oct 23 17:13:14 CDT 2013 i686 Intel(R)
Core(TM) i5-3330 CPU @ 3.00GHz GenuineIntel GNU/Linux

I'm not a C/C++ programmer so please be patient in telling me where to look and
what to look for.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
https://bugs.kde.org/show_bug.cgi?id=337921

Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |BACKTRACE
             Status|UNCONFIRMED                 |NEEDSINFO
                 CC|                            |[hidden email]

--- Comment #1 from Gilles Caulier <[hidden email]> ---
We need a compilation backtrace with the error occurred.

Also, we need to know which libgphoto2 version you use on your system...

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|general                     |Portability

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Version|unspecified                 |4.1.0

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #2 from Cor <[hidden email]> ---
Created attachment 88065
  --> https://bugs.kde.org/attachment.cgi?id=88065&action=edit
compile logs compressed

please find the compile log and compile error log attached.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #3 from Cor <[hidden email]> ---
And I see that my comment containing the version of libgphoto2 has not been
copied... I have version libgphoto2-2.5.2-i486-1 as packaged in Slackware 14.1
by default (unmodified).

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Christoph Feck
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #4 from Christoph Feck <[hidden email]> ---
Is this still an issue with digikam 4.2.0?

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #5 from Cor <[hidden email]> ---
I'm sorry to say that it is still an issue with 4.2.0.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #6 from Gilles Caulier <[hidden email]> ---
New digiKam 4.11.0 is available :

https://www.digikam.org/node/740

Can you reproduce the problem with this release ?

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #7 from Cor <[hidden email]> ---
(In reply to Gilles Caulier from comment #6)
> New digiKam 4.11.0 is available :
>
> https://www.digikam.org/node/740
>
> Can you reproduce the problem with this release ?
>
> Gilles Caulier

I will try and do so once the package is delivered through sbopkg. There are a
couple of depencencies which are required for this version which I don't have
at the moment (such as libkexiv2 and liblcms to name but a few).
I will come back on this.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #8 from Cor <[hidden email]> ---
(In reply to Cor from comment #7)

> (In reply to Gilles Caulier from comment #6)
> > New digiKam 4.11.0 is available :
> >
> > https://www.digikam.org/node/740
> >
> > Can you reproduce the problem with this release ?
> >
> > Gilles Caulier
>
> I will try and do so once the package is delivered through sbopkg. There are
> a couple of depencencies which are required for this version which I don't
> have at the moment (such as libkexiv2 and liblcms to name but a few).
> I will come back on this.

I have tried it and the last message I get is this:

"/var/spool/sbopkg/digikam-4.11.0/core/utilities/importui/backend/gpcamera.cpp:1252:61:
error: cannot convert 'CameraFile* {aka _CameraFile*}' to 'const char*' for
argument '3' to 'int gp_camera_folder_put_file(Camera*, const char*, const
char*, CameraFileType, CameraFile*, GPContext*)'
                                           d->status->context);
                                                             ^
/var/spool/sbopkg/digikam-4.11.0/core/utilities/importui/backend/gpcamera.cpp:
In static member function 'static void
Digikam::GPCamera::getSupportedPorts(QStringList&)':
/var/spool/sbopkg/digikam-4.11.0/core/utilities/importui/backend/gpcamera.cpp:1552:31:
error: request for member 'path' in 'info', which is of pointer type
'GPPortInfo {aka _GPPortInfo*}' (maybe you meant to use '->' ?)
             plist.append(info.path);
                               ^
make[2]: ***
[core/utilities/importui/CMakeFiles/importui.dir/backend/gpcamera.cpp.o] Error
1
make[2]: Leaving directory `/var/spool/sbopkg/digikam-4.11.0/build'
make[1]: *** [core/utilities/importui/CMakeFiles/importui.dir/all] Error 2
make[1]: Leaving directory `/var/spool/sbopkg/digikam-4.11.0/build'
make: *** [all] Error 2
"
I have re-installed all mandatory dependencies and most optional but still I
can't recompile.

Now, I can't find out which dependency contains gpcamera, or how to correct
this. The gpcamera seems to be the same source of the problem, however I'm not
sure whether we're facing the same problem here.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Version|4.1.0                       |4.11.0
     Ever confirmed|0                           |1
             Status|NEEDSINFO                   |REOPENED
         Resolution|BACKTRACE                   |---

--- Comment #9 from Gilles Caulier <[hidden email]> ---
Which libGphoto2 you use currently ?

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #10 from Cor <[hidden email]> ---
(In reply to Gilles Caulier from comment #9)
> Which libGphoto2 you use currently ?
>
> Gilles Caulier

pkgtool reports me the following:
PACKAGE NAME: libgphoto2-2.5.2-i486-1

root@machine:~# whereis libgphoto
libgphoto: /usr/lib/libgphoto2.so /usr/lib/libgphoto2.la

Is there any more information I can provide you with? If so, tell me what
information preferably with the command (and flags) to use.

Thanks for your time and effort

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #11 from Cor <[hidden email]> ---
(In reply to Cor from comment #10)

> (In reply to Gilles Caulier from comment #9)
> > Which libGphoto2 you use currently ?
> >
> > Gilles Caulier
>
> pkgtool reports me the following:
> PACKAGE NAME: libgphoto2-2.5.2-i486-1
>
> root@machine:~# whereis libgphoto
> libgphoto: /usr/lib/libgphoto2.so /usr/lib/libgphoto2.la
>
> Is there any more information I can provide you with? If so, tell me what
> information preferably with the command (and flags) to use.
>
> Thanks for your time and effort

the same information shown differently:

root@machine~# slackpkg search libgphoto2

Looking for libgphoto2 in package list. Please wait... DONE

The list below shows all packages with name matching "libgphoto2".

[ installed ] - libgphoto2-2.5.2-i486-1

You can search specific files using "slackpkg file-search file".

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #12 from Gilles Caulier <[hidden email]> ---
In gpcamera.cpp the problem is here :

#ifdef HAVE_GPHOTO25
    errorCode = gp_camera_folder_put_file(d->camera,
                                         
QFile::encodeName(folder).constData(),
                                          QFile::encodeName(itemName),
                                          GP_FILE_TYPE_NORMAL,
                                          cfile,
                                          d->status->context);
#else
    errorCode = gp_camera_folder_put_file(d->camera,
                                         
QFile::encodeName(folder).constData(),
                                          cfile,
                                          d->status->context);  
<<<<<<<<<<<<<<<<<<<<<<<<<<!!!!!
#endif

In fact the HAVE_GPHOTO25 flag is not set, but you use gphoto 2.5.2.

So the problem can be :

- the detection of Gphoto2.5 by cmake.
- the packaging of gphoto2.5.2 on your system which do not set all properly for
a fine detection.

I suspect the second one, because we have already tested with gphoto < 2.5 and
gphoto >=2.5 on multiple system...

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #13 from Gilles Caulier <[hidden email]> ---
The flag is set by digiKAm cmake script like this :

# -- libgphoto2 rules
--------------------------------------------------------------------------

MACRO_OPTIONAL_FIND_PACKAGE(Gphoto2)

if(NOT WIN32 AND GPHOTO2_FOUND)
    # See bug #268267 : digiKam need to be linked to libusb to prevent crash at
gphoto2 init if opencv is linked with libdc1394
    MACRO_OPTIONAL_FIND_PACKAGE(USB)
endif()

if(GPHOTO2_FOUND)
    exec_program(gphoto2-config ARGS --version RETURN_VALUE _return_VALUE
OUTPUT_VARIABLE GPHOTO2_VERSION)
    string(REPLACE "libgphoto2" "" GPHOTO2_VERSION "${GPHOTO2_VERSION}")
    MACRO_ENSURE_VERSION("2.4.0" "${GPHOTO2_VERSION}" VERSION_GPHOTO2)

    if(VERSION_GPHOTO2 AND LIBUSB_FOUND)
        set(GPHOTO2_FOUND true)
    else()
        set(GPHOTO2_FOUND false)
    endif()

    MACRO_ENSURE_VERSION("2.5.0" "${GPHOTO2_VERSION}" VERSION_GPHOTO25)

    if(VERSION_GPHOTO25)
        set(HAVE_GPHOTO25 1)
    else()
        set(HAVE_GPHOTO25 0)
    endif()
endif()

Typically, it run "gphoto2-config --version" CLI tool to check which version is
installed on your system. What give this command on a console ?

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #14 from Cor <[hidden email]> ---
(In reply to Gilles Caulier from comment #13)

> The flag is set by digiKAm cmake script like this :
>
> # -- libgphoto2 rules
> --------------------------------------------------------------------------
>
> MACRO_OPTIONAL_FIND_PACKAGE(Gphoto2)
>
> if(NOT WIN32 AND GPHOTO2_FOUND)
>     # See bug #268267 : digiKam need to be linked to libusb to prevent crash
> at gphoto2 init if opencv is linked with libdc1394
>     MACRO_OPTIONAL_FIND_PACKAGE(USB)
> endif()
>
> if(GPHOTO2_FOUND)
>     exec_program(gphoto2-config ARGS --version RETURN_VALUE _return_VALUE
> OUTPUT_VARIABLE GPHOTO2_VERSION)
>     string(REPLACE "libgphoto2" "" GPHOTO2_VERSION "${GPHOTO2_VERSION}")
>     MACRO_ENSURE_VERSION("2.4.0" "${GPHOTO2_VERSION}" VERSION_GPHOTO2)
>
>     if(VERSION_GPHOTO2 AND LIBUSB_FOUND)
>         set(GPHOTO2_FOUND true)
>     else()
>         set(GPHOTO2_FOUND false)
>     endif()
>
>     MACRO_ENSURE_VERSION("2.5.0" "${GPHOTO2_VERSION}" VERSION_GPHOTO25)
>
>     if(VERSION_GPHOTO25)
>         set(HAVE_GPHOTO25 1)
>     else()
>         set(HAVE_GPHOTO25 0)
>     endif()
> endif()
>
> Typically, it run "gphoto2-config --version" CLI tool to check which version
> is installed on your system. What give this command on a console ?
>
> Gilles Caulier

root@machine:~# gphoto2-config --version
libgphoto2 2.4.11

Okay, so obviously something hasn't gone right when installing libgphoto2, how
can I repair this?

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #15 from Gilles Caulier <[hidden email]> ---
I don't know exactly. Ask to your distro team, trough IRC.

Tip : typically you mix more than one Gphoto2 version at the same time. Remove
all Gphoto2, and re-install last one.

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Cor
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Cor
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #16 from Cor <[hidden email]> ---
(In reply to Cor from comment #14)

> (In reply to Gilles Caulier from comment #13)
> > The flag is set by digiKAm cmake script like this :
> >
> > # -- libgphoto2 rules
> > --------------------------------------------------------------------------
> >
> > MACRO_OPTIONAL_FIND_PACKAGE(Gphoto2)
> >
> > if(NOT WIN32 AND GPHOTO2_FOUND)
> >     # See bug #268267 : digiKam need to be linked to libusb to prevent crash
> > at gphoto2 init if opencv is linked with libdc1394
> >     MACRO_OPTIONAL_FIND_PACKAGE(USB)
> > endif()
> >
> > if(GPHOTO2_FOUND)
> >     exec_program(gphoto2-config ARGS --version RETURN_VALUE _return_VALUE
> > OUTPUT_VARIABLE GPHOTO2_VERSION)
> >     string(REPLACE "libgphoto2" "" GPHOTO2_VERSION "${GPHOTO2_VERSION}")
> >     MACRO_ENSURE_VERSION("2.4.0" "${GPHOTO2_VERSION}" VERSION_GPHOTO2)
> >
> >     if(VERSION_GPHOTO2 AND LIBUSB_FOUND)
> >         set(GPHOTO2_FOUND true)
> >     else()
> >         set(GPHOTO2_FOUND false)
> >     endif()
> >
> >     MACRO_ENSURE_VERSION("2.5.0" "${GPHOTO2_VERSION}" VERSION_GPHOTO25)
> >
> >     if(VERSION_GPHOTO25)
> >         set(HAVE_GPHOTO25 1)
> >     else()
> >         set(HAVE_GPHOTO25 0)
> >     endif()
> > endif()
> >
> > Typically, it run "gphoto2-config --version" CLI tool to check which version
> > is installed on your system. What give this command on a console ?
> >
> > Gilles Caulier
>
> root@machine:~# gphoto2-config --version
> libgphoto2 2.4.11
>
> Okay, so obviously something hasn't gone right when installing libgphoto2,
> how can I repair this?

So, can I just go into CMakeLists.txt and replace the code with any true part
of the if-statements? Would that work?

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 337921] Unable to compile due to pointer type issue in gpcamera

Gilles Caulier-4
In reply to this post by Cor
https://bugs.kde.org/show_bug.cgi?id=337921

--- Comment #17 from Gilles Caulier <[hidden email]> ---
yes probably. But this is a weird work around with possible side effect.

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
12