Ticket #518 (closed defect/bug: fixed)

Opened 3 years ago

Last modified 3 years ago

Compile problem with gpsd 2.90

Reported by: worldcitizen Owned by: worldcitizen
Priority: blocker Milestone: want patch / contribution
Component: core Version: svn
Keywords: Cc: joop_boonen@…

Description

I get a compilation error with gpsd 2.90. I'm not 100% sure it's related to gpsd 2.90, but it points in that direction as navit compiles without a problem with gpsd 2.37.

<compile error> Making all in gpsd make[5]: Entering directory `/usr/src/packages/BUILD/navit-0.2.0+svn2866/navit/vehicle/gpsd' /bin/sh ../../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../.. -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I../../../navit -DMODULE=vehicle_gpsd -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -Wall -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type -D_GNU_SOURCE -ffast-math -MT vehicle_gpsd.lo -MD -MP -MF .deps/vehicle_gpsd.Tpo -c -o vehicle_gpsd.lo vehicle_gpsd.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../../.. -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I../../../navit -DMODULE=vehicle_gpsd -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -Wall -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type -D_GNU_SOURCE -ffast-math -MT vehicle_gpsd.lo -MD -MP -MF .deps/vehicle_gpsd.Tpo -c vehicle_gpsd.c -fPIC -DPIC -o .libs/vehicle_gpsd.o vehicle_gpsd.c: In function 'vehicle_gpsd_callback': vehicle_gpsd.c:111: error: 'struct gps_data_t' has no member named 'satellites' vehicle_gpsd.c:113: error: 'struct gps_data_t' has no member named 'satellites' vehicle_gpsd.c:118: error: 'struct gps_data_t' has no member named 'satellites' vehicle_gpsd.c:120: error: 'struct gps_data_t' has no member named 'satellites' vehicle_gpsd.c:138: error: 'PDOP_SET' undeclared (first use in this function) vehicle_gpsd.c:138: error: (Each undeclared identifier is reported only once vehicle_gpsd.c:138: error: for each function it appears in.) vehicle_gpsd.c:139: error: 'struct gps_data_t' has no member named 'pdop' vehicle_gpsd.c:140: error: 'struct gps_data_t' has no member named 'hdop' vehicle_gpsd.c: In function 'vehicle_gpsd_try_open': vehicle_gpsd.c:183: warning: implicit declaration of function 'gps_query' vehicle_gpsd.c:184: warning: passing argument 2 of 'gps_set_raw_hook' from incompatible pointer type /usr/include/gps.h:1000: note: expected 'void (*)(struct gps_data_t *, char *, size_t)' but argument is of type 'void (*)(struct gps_data_t *, char *, size_t, int)' vehicle_gpsd.c:186: warning: cast to pointer from integer of different size make[5]: * [vehicle_gpsd.lo] Error 1 make[5]: Leaving directory `/usr/src/packages/BUILD/navit-0.2.0+svn2866/navit/vehicle/gpsd' make[4]: * [all-recursive] Error 1 make[4]: Leaving directory `/usr/src/packages/BUILD/navit-0.2.0+svn2866/navit/vehicle' make[3]: * [all-recursive] Error 1 make[3]: Leaving directory `/usr/src/packages/BUILD/navit-0.2.0+svn2866/navit' make[2]: * [all] Error 2 make[2]: Leaving directory `/usr/src/packages/BUILD/navit-0.2.0+svn2866/navit' make[1]: * [all-recursive] Error 1 make[1]: Leaving directory `/usr/src/packages/BUILD/navit-0.2.0+svn2866' make: * [all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.H7WYqg (%build) </compile error>

Attachments

libgps-2.90-fix Download (4.8 KB) - added by pini 3 years ago.
libgps-2.90-fix-1 Download (6.4 KB) - added by pini 3 years ago.

Change History

Changed 3 years ago by pini

comment:1 Changed 3 years ago by pini

Hi,

Patch attached.

Thanks.

comment:2 Changed 3 years ago by pini

Hi,

Just added a new patch (lib-2.90-fix-1) to cope both with libgps18 and libgps19. It includes the use of pkg-config to check for libgps in configure.in.

Thanks,

_Gilles.

comment:3 Changed 3 years ago by worldcitizen

  • Owner changed from KaZeR to worldcitizen

I've added the patch to a build on the openSuSE buidlservice for testing.

First of all it builds without a problem.

I think some tests need to be done first? When tested i'll consult with the developers to get it incorperated.

comment:4 Changed 3 years ago by pini

Hi,

Yep, it builds but doesn't work with libgps19. I've now patched the patch and at least navit starts correctly.

No more time this evening to test the gps.

I attach the new patch to the ticket.

Thanks.

Changed 3 years ago by pini

comment:5 Changed 3 years ago by worldcitizen

I'm building the package with the new patch. I've miss read your message.

I'm sorry for the delay.

comment:6 Changed 3 years ago by worldcitizen

  • Owner changed from worldcitizen to KaZeR

I've tested the patch. It solves the issue completely.

Can it be submitted or approved so I can submit is? Either way is fine with me.

comment:7 Changed 3 years ago by worldcitizen

  • Priority changed from critical to blocker

comment:8 Changed 3 years ago by worldcitizen

  • Milestone changed from version 0.2.0 to want patch / contribution

comment:9 Changed 3 years ago by worldcitizen

  • Owner changed from KaZeR to worldcitizen
  • Status changed from new to assigned

comment:10 Changed 3 years ago by worldcitizen

  • Status changed from assigned to closed
  • Resolution set to fixed

The patch has been committed svn version #2923

The following was reverted via svn #2924 as it's not needed.

Modified: trunk/navit/navit/attr.h =================================================================== --- trunk/navit/navit/attr.h 2010-01-25 23:20:16 UTC (rev 2923) +++ trunk/navit/navit/attr.h 2010-01-25 23:25:07 UTC (rev 2924) @@ -25,7 +25,6 @@

#endif

#include "projection.h"

-#include "config.h"

enum item_type;

Modified: trunk/navit/navit/attr_def.h =================================================================== --- trunk/navit/navit/attr_def.h 2010-01-25 23:20:16 UTC (rev 2923) +++ trunk/navit/navit/attr_def.h 2010-01-25 23:25:07 UTC (rev 2924) @@ -231,9 +231,7 @@

ATTR(gc_type) ATTR(layout) ATTR(position_nmea)

-#ifndef HAVE_LIBGPS19

ATTR(gpsd_query)

-#endif

ATTR(on_eof) ATTR(command) ATTR(src)

Note: See TracTickets for help on using tickets.