[ gpsdrive ] gpsdrive build fails with gpsd 2.96

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

[ gpsdrive ] gpsdrive build fails with gpsd 2.96

Sergej Pupykin

Hi,

It looks like gpsd 2.96 breaks gpsdrive build, have someone a patch?

**********************************************
[ 60%] Building C object src/CMakeFiles/gpsdrive.dir/gps_handler.o
/home/sergej/community.svn/gpsdrive/trunk/src/gpsdrive-2.11/src/gps_handler.c: In function ‘gps_query_data_cb’:
/home/sergej/community.svn/gpsdrive/trunk/src/gpsdrive-2.11/src/gps_handler.c:413:2: error: too few arguments to function ‘gps_waiting’
/usr/include/gps.h:1435:13: note: declared here
/home/sergej/community.svn/gpsdrive/trunk/src/gpsdrive-2.11/src/gps_handler.c: In function ‘gpsd_connect’:
/home/sergej/community.svn/gpsdrive/trunk/src/gpsdrive-2.11/src/gps_handler.c:450:2: error: too few arguments to function ‘gps_open’
/usr/include/gps.h:1430:12: note: declared here
make[2]: *** [src/CMakeFiles/gpsdrive.dir/gps_handler.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [src/CMakeFiles/gpsdrive.dir/all] Error 2
make: **
**********************************************
_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build fails with gpsd 2.96

4x4falcon
make clean

cmake -DLIBGPS_OLD=OFF

make

Should do the job or edit the DefineOptions.cmake file to

option(LIBGPS_OLD "Build with old libgps version (<2.90)" OFF)


Cheers
Ross



On 05/04/11 23:51, Sergej Pupykin wrote:

>
> Hi,
>
> It looks like gpsd 2.96 breaks gpsdrive build, have someone a patch?
>
> **********************************************
> [ 60%] Building C object src/CMakeFiles/gpsdrive.dir/gps_handler.o
> /home/sergej/community.svn/gpsdrive/trunk/src/gpsdrive-2.11/src/gps_handler.c: In function ‘gps_query_data_cb’:
> /home/sergej/community.svn/gpsdrive/trunk/src/gpsdrive-2.11/src/gps_handler.c:413:2: error: too few arguments to function ‘gps_waiting’
> /usr/include/gps.h:1435:13: note: declared here
> /home/sergej/community.svn/gpsdrive/trunk/src/gpsdrive-2.11/src/gps_handler.c: In function ‘gpsd_connect’:
> /home/sergej/community.svn/gpsdrive/trunk/src/gpsdrive-2.11/src/gps_handler.c:450:2: error: too few arguments to function ‘gps_open’
> /usr/include/gps.h:1430:12: note: declared here
> make[2]: *** [src/CMakeFiles/gpsdrive.dir/gps_handler.o] Error 1
> make[2]: *** Waiting for unfinished jobs....
> make[1]: *** [src/CMakeFiles/gpsdrive.dir/all] Error 2
> make: **
> **********************************************
> _______________________________________________
> GPSdrive mailing list
> [hidden email]
> http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive

_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build fails with gpsd 2.96

Sergej Pupykin
On 06.04.2011 06:21, 4x4falcon wrote:
> make clean
>
> cmake -DLIBGPS_OLD=OFF
>
> make
>
> Should do the job or edit the DefineOptions.cmake file to
>
> option(LIBGPS_OLD "Build with old libgps version (<2.90)" OFF)

I already use it and it builds with gpsd 2.95 successfully , but 2.96
has some changes...

  cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX="/usr" \
     -DWITH_SCRIPTS=ON \
     -DWITH_MAPNIK=ON \
     -DWITH_POSTGIS=ON \
     -DWITH_GDAL=ON \
     -DWITH_BASEMAPS=ON \
     -DWITH_FRIENDSD=ON \
     -DWITH_KISMET=ON \
     -DWITH_NAVIGATION=ON \
     -DWITH_SPEECH=OFF \
     -DWITH_DBUS=OFF \
     -DLIBGPS_OLD=OFF \
     "$srcdir/gpsdrive-$pkgver"

_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build fails with gpsd 2.96

Sergej Pupykin
On 06.04.2011 10:51, Sergej Pupykin wrote:

> On 06.04.2011 06:21, 4x4falcon wrote:
>> make clean
>>
>> cmake -DLIBGPS_OLD=OFF
>>
>> make
>>
>> Should do the job or edit the DefineOptions.cmake file to
>>
>> option(LIBGPS_OLD "Build with old libgps version (<2.90)" OFF)
>
> I already use it and it builds with gpsd 2.95 successfully , but 2.96
> has some changes...
gpsd 2.96 bumps libgps from libgps.so.19 to libgps.so.20
_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build fails with gpsd 2.96

hamish-2
> > 4x4falcon wrote:
> >> cmake -DLIBGPS_OLD=OFF
> >> make
> >>
> >> Should do the job or edit the DefineOptions.cmake file to
> >> option(LIBGPS_OLD "Build with old libgps version (<2.90)" OFF)

Sergej wrote:
> I already use it and it builds with gpsd 2.95 successfully , but
> 2.96 has some changes...
> gpsd 2.96 bumps libgps from libgps.so.19 to libgps.so.20

Hi,

So now there will be 3 API versions to choose from.
I think what we're going to have to do is remove that ON/OFF
option and use #ifdef tests in the C code to test the major/
minor versions of gps.h at compile time. That can happen
automatically, so there's no reason that it shouldn't.

http://gpsd.berlios.de/protocol-transition.html

tests for:
#define GPSD_API_MAJOR_VERSION
#define GPSD_API_MINOR_VERSION
...
#define GPSD_PROTO_MAJOR_VERSION
#define GPSD_PROTO_MINOR_VERSION


Hamish

_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build fails with gpsd 2.96

hamish-2
> Date: Friday, April 8, 2011
> > > 4x4falcon wrote:
> > >> cmake -DLIBGPS_OLD=OFF
> > >> make
> > >>
> > >> Should do the job or edit the DefineOptions.cmake file to
> > >> option(LIBGPS_OLD "Build with old libgps version (<2.90)" OFF)
>
> Sergej wrote:
> > I already use it and it builds with gpsd 2.95 successfully , but
> > 2.96 has some changes...
> > gpsd 2.96 bumps libgps from libgps.so.19 to libgps.so.20

Hamish wrote:

> So now there will be 3 API versions to choose from.
> I think what we're going to have to do is remove that ON/OFF
> option and use #ifdef tests in the C code to test the major/
> minor versions of gps.h at compile time. That can happen
> automatically, so there's no reason that it shouldn't.
>
> http://gpsd.berlios.de/protocol-transition.html
>
> tests for:
> #define GPSD_API_MAJOR_VERSION
> #define GPSD_API_MINOR_VERSION

Hi,

this is now done in svn, gpsd versions <2.39 through 3.x hopefully now
all select the right code automatically at build time. The ON/OFF switch
in DefineOptions.cmake has been removed.

(completely untested so far..)


For Ubuntu 12.04 I'm still stuck on the boost 1.46 libboost-symbol linking
error though.


Hamish
_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build fails with gpsd 2.96

Paul Martin-2
On Sat, May 19, 2012 at 06:05:58PM -0700, Hamish wrote:

> For Ubuntu 12.04 I'm still stuck on the boost 1.46 libboost-symbol linking
> error though.

Does the libboost-dev package version match the version of the
libboost library package?

--
Paul Martin <[hidden email]>
_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build fails with gpsd 2.96

hamish-2
Hi,

good news, I now have GpsDrive building on Debian Sid and Ubuntu 12.04
with Mapnik support (thanks to Aron @ Debian for the tips). I'll prepare
packages after I test that everything works as expected. I think there's
still a little more work to do on the Mapnik 2.0 changes.


fixme: could someone with write access to the OSM svn apply this patch:
http://anonscm.debian.org/viewvc/pkg-grass/packages/gpsdrive/trunk/debian/patches/103-no-textquery.dpatch?revision=2755&view=markup

the perl module in question no longer exists in modern debian & ubuntu.


thanks,
Hamish
_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build fails with gpsd 2.96

hamish-2
Hamish wrote:
> good news, I now have GpsDrive building on Debian Sid and Ubuntu 12.04
> with Mapnik support (thanks to Aron @ Debian for the tips). I'll prepare
> packages after I test that everything works as expected. I think there's
> still a little more work to do on the Mapnik 2.0 changes.

now (in svn) it should install the correct osm.xml based on your Mapnik
API version automatically.


> fixme: could someone with write access to the OSM svn apply this patch:
> http://anonscm.debian.org/viewvc/pkg-grass/packages/gpsdrive/trunk/debian/patches/103-no-textquery.dpatch?revision=2755&view=markup
>
> the perl module in question no longer exists in modern debian & ubuntu.

also the CMake module in there for GTK2 is out of date and no longer works.
It should either be updated or deleted.

.

Testing things out I notice that all forms of map downloads are currently
broken. NASA has switched off their OnEarth LANDSAT WMS server, we need
to write the code to pull from the TMS tiled pyramid service instead;
OpenStreetMap's Tiles@Home is also dead (as is Osmarender) which took out
the Cycle Maps as well. Again, tiled service remains, this time from
OSM's Slippy Map.   But it isn't as friendly, we have to download and
assemble the 256x256 tiles ourselves instead of putting in a geographic
lat/lon request.   mmmph it's sad to see useful things go away.

anyone know of pre-existing code to calc and assemble the tile images?
can't be too hard, just annoying.


Hamish
_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build (works) with gpsd 2.96

hamish-2
Hamish wrote:
> Testing things out I notice that all forms of map downloads
> are currently broken. NASA has switched off their OnEarth LANDSAT WMS
> server, we need to write the code to pull from the TMS tiled pyramid
> service instead;

(disabled in source, with notes on how to implement it)

> OpenStreetMap's Tiles@Home is also dead (as is Osmarender) which took
> out the Cycle Maps as well. Again, tiled service remains, this time
> from OSM's Slippy Map.   But it isn't as friendly, we have to download
> and assemble the 256x256 tiles ourselves instead of putting in a
> geographic lat/lon request.

ok, that's done and working now. The code could be a bit more robust but
it works. Map sources available for download from within the program
are now:

 - OSM's Mapnik
 - OpenCycleMap (OSM + contour lines and hill shading)
 - OSM's Transport layer
 - MapQuest (OSM data with different rendering rules)
 - MapQuest Aerial (satellite imagery, but limited zoom scales)

as always don't abuse their generosity, but the way it is implemented
you'd have to try really really hard to get noticed as the process is
quite slow and I doubt if you'd be able to request more than 40 tiles
in 30 seconds. (n.b. I have not updated gpsfetchmap.pl to allow
automated scraping)

The PNG compression is computationally (ie battery) expensive, but I
figure if you've got an internet connection you've also got 12+ volts,
and saving space on a flash drive is more valuable in the long run.


within the C code we now have support for generic WMS servers (many enviro
databases), TMS servers (like OSM/Bing/Goole Maps), and the OSM Tiles@Home
API (the t@h server is now defunct but may live again in some other home
some day).  but we only have TMS map sources available..

In future I think it would be nice to have the map sources described in a
text/xml/json config file so you wouldn't need to recompile the program
to add or edit the server list.


enjoy,
Hamish
_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive
Reply | Threaded
Open this post in threaded view
|

Re: [ gpsdrive ] gpsdrive build (works) with gpsd 2.96

hamish-2
Hamish wrote:
> > Testing things out I notice that all forms of map downloads
> > are currently broken. NASA has switched off their OnEarth LANDSAT WMS
> > server, we need to write the code to pull from the TMS tiled pyramid
> > service instead;
>
> (disabled in source, with notes on how to implement it)

ok, tiled-WMS using NASA's OnEarth WMS server is now working. I loaded
up some old GPX tracks and they seem to be in the correct place. Please
test.

One downside of the tiled WMS vs. the old WMS is that at town-level map
scales we have to use the Plate Carree (square 1deg lat : 1 deg lon)
aspect ratio, which gives a distorted picture at high latitudes as the
east-west shows stretched.  (these are the top_*.jpg backdrop images)

MapQuest's Open Aerial gives something similar in mercator like projection
without that distortion, but is only available/usable at 3 map scales for
us.

Once I test the mapnik 2.0 support is working I'll cut some svn snapshot
packages for Ubuntu 12.04 and Debian Squeeze.

(making sure that osm2pgsql is compatible with the new mapnik version
may be the biggest challenge, or at least the one we've the least control
over)


regards,
Hamish
_______________________________________________
GPSdrive mailing list
[hidden email]
http://lists.gpsdrivers.org/mailman/listinfo/gpsdrive