Sorry, forgot to attach details.
# Bullseye/testing amd64 qemu VM 2020-01-08
apt update apt dist-upgrade apt install systemd-coredump xserver-xorg sddm openbox xterm net-tools mc fakeroot gdb navit navit-dbgsym libgps25-dbgsym apt build-dep navit reboot mkdir /home/benutzer/source/libgps25/orig -p cd /home/benutzer/source/libgps25/orig apt source libgps25 cd mkdir /home/benutzer/source/navit/orig -p cd /home/benutzer/source/navit/orig apt source navit cd systemctl start gpsd.service export DISPLAY=:0 gdb -q --args navit set width 0 set pagination off set breakpoint pending on directory /home/benutzer/source/libgps25/orig/gpsd-3.20 directory /home/benutzer/source/navit/orig/navit-0.5.3+dfsg.1/navit/vehicle/gpsd b gps_open run print gpsdata print sizeof(*gpsdata) print sizeof(struct gps_data_t) up print priv->gps print sizeof(*priv->gps) print sizeof(struct gps_data_t) down set logging file /tmp/libgps25-ptype-struct-gps_data_t.txt set logging on ptype /o struct gps_data_t set logging off up set logging file /tmp/navit-ptype-struct-gps_data_t.txt set logging on ptype /o struct gps_data_t set logging off benutzer@debian:~$ gdb -q --args navit Reading symbols from navit... Reading symbols from /usr/lib/debug/.build-id/ad/4c802fbe455074f8a5eb217f3ade9bddb73bd5.debug... (gdb) set width 0 (gdb) set pagination off (gdb) set breakpoint pending on (gdb) directory /home/benutzer/source/libgps25/orig/gpsd-3.20 Source directories searched: /home/benutzer/source/libgps25/orig/gpsd-3.20:$cdir:$cwd (gdb) directory /home/benutzer/source/navit/orig/navit-0.5.3+dfsg.1/navit/vehicle/gpsd Source directories searched: /home/benutzer/source/navit/orig/navit-0.5.3+dfsg.1/navit/vehicle/gpsd:/home/benutzer/source/libgps25/orig/gpsd-3.20:$cdir:$cwd (gdb) b gps_open Function "gps_open" not defined. Breakpoint 1 (gps_open) pending. (gdb) run Starting program: /usr/bin/navit [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Breakpoint 1, gps_open (host=host@entry=0x5555556bc137 "localhost", port=0x0, gpsdata=0x5555556d4a50) at libgps_core.c:73 73 if (!gpsdata) (gdb) print gpsdata $1 = (struct gps_data_t *) 0x5555556d4a50 (gdb) print sizeof(*gpsdata) $2 = 24008 (gdb) print sizeof(struct gps_data_t) $3 = 24008 (gdb) up #1 0x00007ffff56555c3 in vehicle_gpsd_try_open (priv=priv@entry=0x55555568f510) at ./navit/vehicle/gpsd/vehicle_gpsd.c:225 warning: Source file is more recent than executable. 225 if (gps_open(source + 7, port, priv->gps)) { (gdb) print priv->gps $4 = (struct gps_data_t *) 0x5555556d4a50 (gdb) print sizeof(*priv->gps) $5 = 20800 (gdb) print sizeof(struct gps_data_t) $6 = 20800 (gdb) benutzer@debian:~$ diff -ty /tmp/libgps25-ptype-struct-gps_data_t.txt /tmp/navit-ptype-struct-gps_data_t.txt | head -n 20 /* offset | size */ type = struct gps_data_t { /* offset | size */ type = struct gps_data_t { /* 0 | 8 */ gps_mask_t set; /* 0 | 8 */ gps_mask_t set; /* 8 | 16 */ timespec_t online; | /* 8 | 8 */ timestamp_t online; /* 24 | 4 */ socket_t gps_fd; | /* 16 | 4 */ socket_t gps_fd; /* XXX 4-byte hole */ /* XXX 4-byte hole */ /* 32 | 360 */ struct gps_fix_t { | /* 24 | 256 */ struct gps_fix_t { /* 32 | 16 */ timespec_t time; | /* 24 | 8 */ timestamp_t time; /* 48 | 4 */ int mode; | /* 32 | 4 */ int mode; /* XXX 4-byte hole */ | /* XXX 4-byte hole */ /* 56 | 8 */ double ept; | /* 40 | 8 */ double ept; /* 64 | 8 */ double latitude; | /* 48 | 8 */ double latitude; /* 72 | 8 */ double epy; | /* 56 | 8 */ double epy; /* 80 | 8 */ double longitude; | /* 64 | 8 */ double longitude; /* 88 | 8 */ double epx; | /* 72 | 8 */ double epx; /* 96 | 8 */ double altitude; | /* 80 | 8 */ double altitude; /* 104 | 8 */ double altHAE; | /* 88 | 8 */ double epv; /* 112 | 8 */ double altMSL; | /* 96 | 8 */ double track; /* 120 | 8 */ double epv; | /* 104 | 8 */ double epd; /* 128 | 8 */ double track; | /* 112 | 8 */ double speed; /* 136 | 8 */ double epd; | /* 120 | 8 */ double eps; https://buildd.debian.org/status/fetch.php?pkg=gpsd&arch=amd64&ver=3.20-1&stamp=1578160890&raw=0 gcc -o libgps_core.o -c -pthread -Wall -Wcast-align -Wextra -Wimplicit-fallthrough -Wmissing-declarations -Wmissing-prototypes -Wno-missing-field-initializers -Wno-uninitialized -Wpointer-arith -Wreturn-type -Wstrict-prototypes -Wvla -g -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -O2 -pthread -D_FORTIFY_SOURCE=2 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include libgps_core.c https://buildd.debian.org/status/fetch.php?pkg=navit&arch=amd64&ver=0.5.3%2Bdfsg.1-2%2Bb1&stamp=1571055435&raw=0 Setting up libgps-dev (3.19-2) ... cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/navit/vehicle/gpsd && /usr/bin/gcc -DBIN_DIR=\"bin\" -DHAVE_LIBGPS19=1 -DIMAGE_DIR=\"share/navit/icons\" -DLIB_DIR=\"lib/navit\" -DLOCALE_DIR=\"share/locale\" -DMAN_DIR=\"share/man/man1\" -DMODULE=vehicle_gpsd -DSHARE_DIR=\"share/navit\" -Dvehicle_gpsd_EXPORTS -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/freetype2 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/atk-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/navit -I/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/navit -I/<<PKGBUILDDIR>>/navit/support -I/<<PKGBUILDDIR>>/navit/font/freetype -I/<<PKGBUILDDIR>>/navit/graphics/gtk_drawing_area -I/<<PKGBUILDDIR>>/navit/gui/gtk -I/<<PKGBUILDDIR>>/navit/vehicle/gpsd -I/<<PKGBUILDDIR>>/navit/binding/dbus -I/<<PKGBUILDDIR>>/navit/speech/dbus -I/<<PKGBUILDDIR>>/navit/speech/cmdline -I/<<PKGBUILDDIR>>/navit/vehicle/gpsd_dbus -I/<<PKGBUILDDIR>>/navit/speech/speech_dispatcher -I/<<PKGBUILDDIR>>/navit/map/garmin -I/<<PKGBUILDDIR>>/navit/graphics/null -I/<<PKGBUILDDIR>>/navit/osd/core -I/<<PKGBUILDDIR>>/navit/vehicle/demo -I/<<PKGBUILDDIR>>/navit/vehicle/file -I/<<PKGBUILDDIR>>/navit/vehicle/null -I/<<PKGBUILDDIR>>/navit/gui/internal -I/<<PKGBUILDDIR>>/navit/map/binfile -I/<<PKGBUILDDIR>>/navit/map/filter -I/<<PKGBUILDDIR>>/navit/map/mg -I/<<PKGBUILDDIR>>/navit/map/shapefile -I/<<PKGBUILDDIR>>/navit/map/textfile -I/<<PKGBUILDDIR>>/navit/map/csv -I/<<PKGBUILDDIR>>/navit/plugin/pedestrian -I/<<PKGBUILDDIR>>/navit/fib-1.1 -isystem /usr/include/gtk-2.0 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wundef -Wcast-align -Wpointer-arith -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wextra -Wmissing-prototypes -Wstrict-prototypes -Wformat-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fPIC -o CMakeFiles/vehicle_gpsd.dir/vehicle_gpsd.c.o -c /<<PKGBUILDDIR>>/navit/vehicle/gpsd/vehicle_gpsd.c https://sources.debian.org/src/gpsd/3.19-2%7Ebpo10+1/gps.h/#L97 https://sources.debian.org/src/gpsd/3.20-1/gps.h/#L123 benutzer@debian:~$ dpkg -l | grep -E "navit|gps" ii gpsd 3.20-1 amd64 Global Positioning System - daemon ii libgps-dev 3.20-1 amd64 Global Positioning System - development files ii libgps25:amd64 3.20-1 amd64 Global Positioning System - library ii libgps25-dbgsym:amd64 3.20-1 amd64 debug symbols for libgps25 ii navit 0.5.3+dfsg.1-2+b1 amd64 Car navigation system with routing engine ii navit-data 0.5.3+dfsg.1-2 all Car navigation system with routing engine - data files ii navit-dbgsym 0.5.3+dfsg.1-2+b1 amd64 debug symbols for navit ii navit-graphics-gtk-drawing-area 0.5.3+dfsg.1-2+b1 amd64 Car navigation system with routing engine - GTK+ graphic plugin ii navit-gui-internal 0.5.3+dfsg.1-2+b1 amd64 Car navigation system with routing engine - internal GUI cd /home/benutzer/source/navit cp orig try1 -a cd try1/navit-0.5.3+dfsg.1 dpkg-buildpackage <<PKGBUILDDIR>>/navit/vehicle/gpsd/vehicle_gpsd.c: In function ‘vehicle_gpsd_callback’: <<PKGBUILDDIR>>/navit/vehicle/gpsd/vehicle_gpsd.c:177:26: error: incompatible types when assigning to type ‘time_t’ {aka ‘long int’} from type ‘timespec_t’ {aka ‘struct timespec’} 177 | priv->fix_time = data->fix.time; | ^~~~ https://snapshot.debian.org/package/gpsd/3.19-3/ wget https://snapshot.debian.org/archive/debian/20191122T024832Z/pool/main/g/gpsd/gpsd_3.19-3_amd64.deb wget https://snapshot.debian.org/archive/debian/20191122T024832Z/pool/main/g/gpsd/libgps-dev_3.19-3_amd64.deb wget https://snapshot.debian.org/archive/debian/20191122T024832Z/pool/main/g/gpsd/libgps25_3.19-3_amd64.deb wget https://snapshot.debian.org/archive/debian-debug/20191122T024701Z/pool/main/g/gpsd/libgps25-dbgsym_3.19-3_amd64.deb