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 588397 - Map plugin fails to build against libchamplain-0.3
Map plugin fails to build against libchamplain-0.3
Status: RESOLVED FIXED
Product: eog-plugins
Classification: Core
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: EOG Maintainers
EOG Maintainers
Depends on: 590692
Blocks:
 
 
Reported: 2009-07-12 19:34 UTC by Andrew Starr-Bochicchio
Modified: 2019-02-22 03:17 UTC
See Also:
GNOME target: ---
GNOME version: 2.27/2.28


Attachments
Port to Clutter 1.0 and libchamplain 0.3.6 (6.59 KB, patch)
2009-08-04 02:56 UTC, Pierre-Luc Beaudoin
reviewed Details | Review

Description Andrew Starr-Bochicchio 2009-07-12 19:34:12 UTC
Attempting to build a eog-plugins package for Ubuntu Karmic, it fails to build with libchamplain-0.3. I suppose it was to be expected as I had to patch configure.ac even to try and build it....


eog-champlain-plugin.c: In function 'get_coordinates':
eog-champlain-plugin.c:138: warning: implicit declaration of function 'eog_exif_util_get_value'
eog-champlain-plugin.c: In function 'create_marker':
eog-champlain-plugin.c:205: warning: implicit declaration of function 'champlain_marker_set_position'
eog-champlain-plugin.c: In function 'impl_activate':
eog-champlain-plugin.c:305: error: 'CHAMPLAIN_VIEW_MODE_KINETIC' undeclared (first use in this function)
eog-champlain-plugin.c:305: error: (Each undeclared identifier is reported only once
eog-champlain-plugin.c:305: error: for each function it appears in.)
eog-champlain-plugin.c:305: error: too many arguments to function 'champlain_view_new'
eog-champlain-plugin.c:308: warning: 'champlain_view_embed_new' is deprecated (declared at /usr/include/libchamplain-gtk-0.3/champlain-gtk/gtk-champlain-embed.h:61)
eog-champlain-plugin.c:326: warning: assignment from incompatible pointer type
eog-champlain-plugin.c:327: warning: passing argument 2 of 'champlain_view_add_layer' from incompatible pointer type
/usr/include/libchamplain-0.3/champlain/champlain-view.h:119: note: expected 'struct ChamplainLayer *' but argument is of type 'struct ClutterActor *'
make[4]: *** [eog-champlain-plugin.lo] Error 1
make[4]: Leaving directory `/tmp/buildd/eog-plugins-2.27.0~git20090707.a35368/plugins/champlain'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/buildd/eog-plugins-2.27.0~git20090707.a35368/plugins'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/buildd/eog-plugins-2.27.0~git20090707.a35368'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/tmp/buildd/eog-plugins-2.27.0~git20090707.a35368'
make: *** [debian/stamp-makefile-build] Error 2
Comment 1 Felix Riemann 2009-07-14 13:23:32 UTC
Yes, this is currently expected.
Looking http://live.gnome.org/libchamplain/schedule it looks like it will make the switch to clutter-1.0 soon, so it might be worth waiting until libchamplain-0.3's API is mostly stable before adapting the plugin.
Comment 2 Pierre-Luc Beaudoin 2009-07-14 13:54:11 UTC
I alrealdy have a patch that fixes this, I just didn't publish it yet.  It'll have to wait until I return from vacation on July 24th.
Comment 3 Pierre-Luc Beaudoin 2009-08-04 02:56:52 UTC
Created attachment 139835 [details] [review]
Port to Clutter 1.0 and libchamplain 0.3.6

Works better than before, except for the nasty bug #590692 in libchamplain 0.3.6.
Comment 4 Felix Riemann 2009-08-04 16:51:33 UTC
(In reply to comment #3)
> Works better than before, except for the nasty bug #590692 in libchamplain
> 0.3.6.
> 

Hmm, it's crashing again in my video driver. Different function this time though.
The fix I committed for the old version probably needs some extension.
Comment 5 Felix Riemann 2009-08-04 17:55:17 UTC
Okay, looks like I know what to do to avoid the crash. Just need to make the patch a bit nicer (hopefully doesn't need 9 months as the last one ;) ).

This leaves us with bug 590692, which makes it impossible to disable the plugin from the Plugin Manager as eog is aborted before it updates the gconf key.

Apart from that, the patch looks good.
Comment 6 Felix Riemann 2009-08-24 10:57:41 UTC
Pushed this together with the GtkFrame-workaround, as we plan to do a first eog-plugins release for 2.27.91. Once there is a fix for bug 590692 available the workaround can be reverted.

commit 4131a1d8df75599aab2e9b33572f42544b2923c7
Author: Pierre-Luc Beaudoin <>
Date:   Mon Aug 24 12:35:35 2009 +0200

    [champlain] Migrate to libchamplain-0.3 and clutter-1.0
    
    Update the plugin to work with the latest releases of said libraries.
    Closes bgo#588397.

commit aca7153e266dd8f1755fce72c370cbe1862d50b0
Author: Felix Riemann <>
Date:   Mon Aug 24 12:46:38 2009 +0200

    [champlain] Place map widget inside GtkFrame instead of a GtkViewport
    
    This is a temporary workaround to avoid fatal X errors when destroying
    the widget. A label-less GtkFrame should only look minimally different
    to the viewport and avoids the fatal errors. See bgo#590692 for details.