[FOSS-GPS] foxtrotGPS compiling issues with Ubuntu 9.10
Timo Juhani Lindfors
timo.lindfors at iki.fi
Mon May 24 14:56:53 EDT 2010
Aapo Rantalainen <aapo.rantalainen at gmail.com> writes:
> http://www.foxtrotgps.org/build.html
>
> 1) on instructions: libglade2.0 might be libglade2-dev
> 2) libgps-dev is needed but not in list
Thanks for reporting these! These two are indeed missing from the
build page. I pinged rozzin on IRC in the hope that he has write
access to the web page. A bug tracking system would be nice so that
this does not get forgotten... :-)
> 2B) minimum version of libgps?
At least libgps 2.94-2 has been tested to work.
> With Ubuntu 9.10 (libgps 2.39-5) I got:
> gps_functions.c: In function ‘cb_gpsd_data’:
> gps_functions.c:720: error: ‘struct gps_data_t’ has no member named ‘dop’
".dop.hdop" of gps_data_t used to be just ".hdop".
> gps_functions.c: In function ‘get_gps_thread’:
> gps_functions.c:770: warning: implicit declaration of function ‘gps_stream’
> gps_functions.c:770: error: ‘WATCH_ENABLE’ undeclared (first use in
> this function)
> gps_functions.c:770: error: (Each undeclared identifier is reported only once
> gps_functions.c:770: error: for each function it appears in.)
> gps_functions.c:770: error: ‘POLL_NONBLOCK’ undeclared (first use in
> this function)
However, this one is more tricky. With
--- src/gps_functions.c 2010-05-06 03:50:28 +0000
+++ src/gps_functions.c 2010-05-24 18:50:53 +0000
@@ -717,7 +717,11 @@
if (ret == 0)
{
gpsdata->satellites_used = libgps_gpsdata->satellites_used;
+#if 0 /* "new" libgps */
gpsdata->hdop = libgps_gpsdata->dop.hdop;
+#else
+ gpsdata->hdop = libgps_gpsdata->hdop;
+#endif
gpsdata->fix.time = libgps_gpsdata->fix.time;
if (isnan(gpsdata->fix.time))
{
@@ -767,7 +771,11 @@
}
+#if 0 /* "new" libgps */
gps_stream(libgps_gpsdata, WATCH_ENABLE | POLL_NONBLOCK, NULL);
+#else
+ gps_query(libgps_gpsdata, "w+x\n");
+#endif
watchdog = g_timeout_add_seconds_full(G_PRIORITY_DEFAULT_IDLE,60,reset_gpsd_io,NULL,NULL);
foxtrotgps builds with libgps-dev 2.37-7. It also connects to gpsd
port and send "w+x\n". However, if I kill netcat that I used to listen
to the gpsd port then foxtrotgps prints
gps_poll returned -1
again and again. I don't currently have a real gpsd to test with so I
can't test if it works in normal cases or not.
More information about the FOSS-GPS
mailing list