#74 viking fails to compile with gpsd 2.96

gps support (6)

When compiling viking against gpsd 2.96 it fails. (api changed upstream )

[ 71%] Building CXX object src/CMakeFiles/qlandkartegt.dir/CDeviceGPSD.cpp.o
/build/src/qlandkartegt-1.1.1/src/CDeviceGPSD.cpp: In member function 'virtual void CGPSDThread::run()':
/build/src/qlandkartegt-1.1.1/src/CDeviceGPSD.cpp:152:56: error: too few arguments to function 'int gps_open(const char*, const char*, gps_data_t*)'
/usr/include/gps.h:1430:12: note: declared here
/build/src/qlandkartegt-1.1.1/src/CDeviceGPSD.cpp:190:35: error: 'gps_poll' was not declared in this scope
make[2]: *** [src/CMakeFiles/qlandkartegt.dir/CDeviceGPSD.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/qlandkartegt.dir/all] Error 2
make: *** [all] Error 2

If i have time i will look into patching it


  • Guilhem BONNEFILLE

    Traces do not concern viking. But viking is certainly concerned by a API change.

  • Rob Norris

    Rob Norris - 2011-05-26

    I have an experimental fix, as I can't confirm it works with 2.96 (at least it doesn't crash AFAIK) - works with 2.95 and should do with 2.39.

    When I set my system up* with 2.96, gpsd itself doesn't seem to pick up my Garmin Etrex and so gpsd's own client program cgps doesn't give any results.
    *I removed 2.95 with dpkg, then used the 2.96 source, compiled and 'make install' to install.
    It would be nice if some one can test it with a working 2.96 gpsd, in principal it should work....

    Code is here:

  • Rob Norris

    Rob Norris - 2011-05-26
    • labels: --> gps support
    • status: open --> open-remind
  • Rob Norris

    Rob Norris - 2011-11-18

    Code applied to git master.

    The key to getting testing to work with gpsd code from source was using 'gpsfake' to stimulate gpsd.

  • Rob Norris

    Rob Norris - 2011-11-18
    • status: open-remind --> closed-accepted

Log in to post a comment.