Bug#646446: gpsdrive: FTBFS: mapnik.cpp:33:15: error: 'mapnik::Image32' has not, been declared

2011-12-01 Thread Allison Randal
Source: gpsdrive
Version: 2.10~pre4-6.dfsg-5.1
Severity: serious
Tags: patch

The gpsdrive package is FTBFS with version 2.0.0 of the mapnik library,
which is the current version in Debian wheezy and sid, and Ubuntu
precise. The FTBFS occurs because the APIs of the new 2.0.0 version of
Mapnik are backward-incompatible to the old 0.7.1 version of Mapnik (see
https://github.com/mapnik/mapnik/wiki/Mapnik2).

Note, there is a Debian bug requesting to update the gpsdrive packages
to version 2.11 (Bug #591260), however this will not help resolve the
FTBFS, because 2.11 of gpsdrive is also FTBFS with mapnik version 2.0.0.

Since I'm not sure when or if the gpsdrive developers plan to migrate to
Mapnik 2.0.0, I've submitted a patch to the Ubuntu package that disables
the optional mapnik library in the gpsdrive packages. Attaching the
patch, for Debian upstream application. (I haven't made/tested the minor
changes needed for precise-unstable.)

Allison
=== modified file 'debian/README.Debian'
--- debian/README.Debian	2008-08-31 17:40:05 +
+++ debian/README.Debian	2011-12-01 22:27:04 +
@@ -1,6 +1,14 @@
 gpsdrive for Debian
 ---
 
+Using gpsdrive with mapnik 2.0
+--
+
+* Gpsdrive is incompatible with the new APIs of mapnik 2.0.0. This
+  optional library is now disabled in the package.
+
+ -- Allison Randal alli...@canonical.com Thu, 01 Dec 2011 12:48:22 -0800
+
 Upgrading from gpsdrive 2.09 (etch)
 -
 * The mysql database schema has been changed.

=== modified file 'debian/changelog'
--- debian/changelog	2011-11-23 23:34:54 +
+++ debian/changelog	2011-12-01 22:55:21 +
@@ -1,3 +1,12 @@
+gpsdrive (2.10~pre4-6.dfsg-5ubuntu4) precise; urgency=low
+
+  * Disable optional mapnik libraries, gpsdrive is incompatible with
+APIs of mapnik version 2.0.0.
+  * debian/patches/107-fix-disable-mapnik.dpatch:
+Fix known bug with gpsdrive-2.10pre4 when disabling Mapnik library.
+
+ -- Allison Randal alli...@canonical.com  Thu, 01 Dec 2011 12:48:22 -0800
+
 gpsdrive (2.10~pre4-6.dfsg-5ubuntu3) precise; urgency=low
 
   * Rebuild for libmysqlclient transition

=== modified file 'debian/control'
--- debian/control	2010-07-26 06:41:40 +
+++ debian/control	2011-12-01 21:39:32 +
@@ -6,7 +6,7 @@
 Uploaders: Andreas Putzo andr...@putzo.net, Francesco Paolo Lovergine fran...@debian.org
 DM-Upload-Allowed: yes
 Build-Depends: debhelper (= 7), automake1.9, libtool, pkg-config, libpcre3-dev, libgtk2.0-dev,libart-2.0-dev, libxml2-dev, libmysqlclient-dev, 
- autotools-dev, dpatch, libmapnik-dev (= 0.6), libboost-dev, libboost-filesystem-dev, libboost-serialization-dev, libdbus-glib-1-dev
+ autotools-dev, dpatch, libboost-dev, libboost-filesystem-dev, libboost-serialization-dev, libdbus-glib-1-dev, libltdl-dev (= 2.4)
 Standards-Version: 3.8.4
 Homepage: http://gpsdrive.de
 Vcs-Svn: svn://svn.debian.org/svn/pkg-grass/packages/gpsdrive/trunk
@@ -40,7 +40,7 @@
 
 Package: gpsdrive-scripts
 Architecture: all
-Depends: gpsdrive, ${perl:Depends}, python, python-imaging, python-mapnik, libdbi-perl, libdbd-mysql-perl, libdate-manip-perl, libfile-slurp-perl, 
+Depends: gpsdrive, ${perl:Depends}, python, python-imaging, libdbi-perl, libdbd-mysql-perl, libdate-manip-perl, libfile-slurp-perl, 
  libmime-base64-perl, libtime-local-perl, libwww-curl-perl, libwww-mechanize-perl, libxml-parser-perl, libxml-simple-perl, libxml-twig-perl, 
  libxml-writer-perl, perlmagick, perl-tk
 Description: Various scripts for gpsdrive

=== modified file 'debian/gpsdrive-scripts.install'
--- debian/gpsdrive-scripts.install	2008-03-26 18:35:38 +
+++ debian/gpsdrive-scripts.install	2011-12-01 20:56:19 +
@@ -5,7 +5,7 @@
 usr/bin/gpspoint2gpsdrive.pl
 usr/bin/gpsreplay
 usr/bin/poi-manager.pl
-usr/bin/gpsdrive_mapnik_gentiles.py
+#usr/bin/gpsdrive_mapnik_gentiles.py
 usr/share/perl5/Geo/Filter/*usr/share/perl5/Geo/Gpsdrive/Filter
 usr/share/perl5/Geo/GPX/*   usr/share/perl5/Geo/Gpsdrive/GPX
 usr/share/perl5/Geo/Geometry.pm usr/share/perl5/Geo/Gpsdrive

=== modified file 'debian/gpsdrive.install'
--- debian/gpsdrive.install	2008-08-31 17:40:05 +
+++ debian/gpsdrive.install	2011-12-01 20:55:54 +
@@ -2,5 +2,5 @@
 usr/bin/friendsd2
 usr/share/applications/gpsdrive.desktop
 usr/share/gpsdrive/map_koord.txt
-usr/share/gpsdrive/mapnik/osm.xml
+#usr/share/gpsdrive/mapnik/osm.xml
 usr/share/map-icons/icons.xml usr/share/gpsdrive/map-icons/

=== modified file 'debian/patches/00list'
--- debian/patches/00list	2011-07-05 12:30:16 +
+++ debian/patches/00list	2011-12-01 22:35:18 +
@@ -22,3 +22,4 @@
 104-lp-325288
 105-fix-xcursor-check.dpatch
 106-add-boost-links.dpatch
+107-fix-disable-mapnik.dpatch

=== added file 'debian/patches/107-fix-disable-mapnik.dpatch'
--- debian/patches/107-fix-disable-mapnik.dpatch	1970-01-01 00:00:00 +
+++ debian/patches/107-fix-disable-mapnik.dpatch	2011-12-01 22:37:18 +
@@ -0,0 +1,24 @@
+#! /bin/sh 

Bug#646446: gpsdrive: FTBFS: mapnik.cpp:33:15: error: 'mapnik::Image32' has not been declared

2011-10-24 Thread Mònica Ramírez Arceda
Source: gpsdrive
Version: 2.10~pre4-6.dfsg-5.1
Severity: serious
Tags: wheezy sid
User: debian...@lists.debian.org
Usertags: qa-ftbfs-20111022 qa-ftbfs
Justification: FTBFS on amd64

Hi,

During a rebuild of all packages in sid, your package failed to build on
amd64.

Relevant part:
 if x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. 
 -DLOCALEDIR=\/usr/share/locale\ -DDATADIR=\/usr/share\ 
 -DLIBDIR=\/usr/lib\ -DFRIENDSSERVERVERSION=\2\   -DMAPNIK -I/usr/include/ 
 -I/usr/local/include -I/opt/boost_1_35/include/boost-1_35 
 -I/usr/local/include/freetype2 -I/usr/include/freetype2 -I. -L/usr/local/lib 
 -I. -I. -I.. -pthread -I/usr/include/dbus-1.0 
 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/glib-2.0 
 -I/usr/lib/glib-2.0/include   -DDBUS_API_SUBJECT_TO_CHANGE=1-g -O2  -MT 
 mapnik.o -MD -MP -MF .deps/mapnik.Tpo -c -o mapnik.o mapnik.cpp; \
   then mv -f .deps/mapnik.Tpo .deps/mapnik.Po; else rm -f 
 .deps/mapnik.Tpo; exit 1; fi
 mapnik.cpp:33:15: error: 'mapnik::Image32' has not been declared
 mapnik.cpp:35:15: error: 'mapnik::Layer' has not been declared
 mapnik.cpp:36:15: error: 'mapnik::Envelope' has not been declared
 mapnik.cpp: In function 'void mapnik::render_mapnik()':
 mapnik.cpp:346:5: error: 'Envelope' was not declared in this scope
 mapnik.cpp:346:14: error: expected primary-expression before 'double'
 mapnik.cpp:346:14: error: expected ';' before 'double'
 mapnik.cpp:351:23: error: 'class mapnik::Map' has no member named 'zoomToBox'
 mapnik.cpp:351:33: error: 'box' was not declared in this scope
 mapnik.cpp:353:5: error: 'Image32' was not declared in this scope
 mapnik.cpp:353:13: error: expected ';' before 'buf'
 mapnik.cpp:354:33: error: type/value mismatch at argument 1 in template 
 parameter list for 'templateclass T class mapnik::agg_renderer'
 mapnik.cpp:354:33: error:   expected a type, got 'Image32'
 mapnik.cpp:354:38: error: invalid type in declaration before '(' token
 mapnik.cpp:354:57: error: 'buf' was not declared in this scope
 mapnik.cpp:354:60: error: expression list treated as compound expression in 
 initializer [-fpermissive]
 mapnik.cpp:355:9: error: request for member 'apply' in 'ren', which is of 
 non-class type 'int'
 mapnik.cpp:357:53: error: 'class mapnik::Map' has no member named 
 'getCurrentExtent'
 mapnik.cpp:367:5: error: 'Envelope' is not a member of 'mapnik'
 mapnik.cpp:367:22: error: expected primary-expression before 'double'
 mapnik.cpp:367:22: error: expected ';' before 'double'
 mapnik.cpp:368:26: error: 'ext' was not declared in this scope
 make[4]: *** [mapnik.o] Error 1

The full build log is available from:
   
http://people.debian.org/~lucas/logs/2011/10/22/gpsdrive_2.10~pre4-6.dfsg-5.1_lsid64.buildlog

A list of current common problems and possible solutions is available at 
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on about 50 AMD64 nodes
of the Grid'5000 platform, using a clean chroot.  Internet was not
accessible from the build systems.



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org