Hi,
are you aware of this compile issue with gcc-7.3.0 at least?
x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -pthread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/g
dk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DVIKING_DATADIR=\""/usr/s
hare/viking"\" -DVIKING_SYSCONFDIR=\""/etc/viking"\" -Wall -g -D_GNU_SOURCE -pthread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr
/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/in
clude -O2 -pipe -mpclmul -mpopcnt -march=native -ftree-vectorize -c -o vikgpslayer.o vikgpslayer.c
vikgpslayer.c:1695:3: error: expected identifier or '(' before 'return'
return FALSE; /* no further calling */
^~~~~~
vikgpslayer.c:1696:1: error: expected identifier or '(' before '}' token
}
^
vikgpslayer.c:1739:6: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
vgl->vgpsd->vgl = vgl;
^~
vikgpslayer.c:1741:6: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
vgl->realtime_fix.dirty = vgl->last_fix.dirty = FALSE;
^~
vikgpslayer.c:1743:6: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
vgl->realtime_fix.fix.altitude = vgl->last_fix.fix.altitude = VIK_DEFAULT_ALTITUDE;
^~
vikgpslayer.c:1744:6: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
vgl->realtime_fix.fix.speed = vgl->last_fix.fix.speed = NAN;
^~
vikgpslayer.c:1746:3: error: expected identifier or '(' before 'if'
if (vgl->realtime_record) {
^~
vikgpslayer.c:1757:6: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
vgl->realtime_io_channel = g_io_channel_unix_new(vgl->vgpsd->gpsd.gps_fd);
^~
vikgpslayer.c:1758:6: error: expected '=', ',', ';', 'asm' or '__attribute__' before '->' token
vgl->realtime_io_watch_id = g_io_add_watch( vgl->realtime_io_channel,
^~
vikgpslayer.c:1768:3: error: expected identifier or '(' before 'return'
return FALSE; /* no longer called by timeout */
^~~~~~
vikgpslayer.c:1769:1: error: expected identifier or '(' before '}' token
}
^
vikgpslayer.c:1698:15: warning: 'make_track_name' defined but not used [-Wunused-function]
static gchar *make_track_name(VikTrwLayer *vtl)
^~~~~~~~~~~~~~~
vikgpslayer.c:1674:17: warning: 'gpsd_data_available' defined but not used [-Wunused-function]
static gboolean gpsd_data_available(GIOChannel *source, GIOCondition condition, gpointer data)
^~~~~~~~~~~~~~~~~~~
vikgpslayer.c:1605:13: warning: 'gpsd_raw_hook' defined but not used [-Wunused-function]
static void gpsd_raw_hook(VglGpsd *vgpsd, gchar *data)
^~~~~~~~~~~~~
make[3]: *** [Makefile:964: vikgpslayer.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/scratch/var/tmp/portage/sci-geosciences/viking-1.6.2-r1/work/viking-1.6.2/src'
make[2]: *** [Makefile:1018: all-recursive] Error 1
make[2]: Leaving directory '/scratch/var/tmp/portage/sci-geosciences/viking-1.6.2-r1/work/viking-1.6.2/src'
make[1]: *** [Makefile:704: all] Error 2
make[1]: Leaving directory '/scratch/var/tmp/portage/sci-geosciences/viking-1.6.2-r1/work/viking-1.6.2/src'
make: *** [Makefile:454: all-recursive] Error 1
* ERROR: sci-geosciences/viking-1.6.2-r1::gentoo failed (compile phase):
* emake failed
*
* If you need support, post the output of `emerge --info '=sci-geosciences/viking-1.6.2-r1::gentoo'`,
* the complete build log and the output of `emerge -pqv '=sci-geosciences/viking-1.6.2-r1::gentoo'`.
* The complete build log is located at '/scratch/var/tmp/portage/sci-geosciences/viking-1.6.2-r1/temp/build.log'.
* The ebuild environment file is located at '/scratch/var/tmp/portage/sci-geosciences/viking-1.6.2-r1/temp/environment'.
* Working directory: '/scratch/var/tmp/portage/sci-geosciences/viking-1.6.2-r1/work/viking-1.6.2'
* S: '/scratch/var/tmp/portage/sci-geosciences/viking-1.6.2-r1/work/viking-1.6.2'
It also happens with current git master.
So it turns out I have too new gpsd:
https://bugs.gentoo.org/658886#c13
Fixed in latest source code
Hi,
After the fix in latest source code now I get on Mageia Cauldron with latest gpsd 3.18:
API change for gps_read() now fixed in latest source code.
Confirmed here now viking build fine against new gpsd 3.18