Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

indi_gpsd incompatible with gpsd 3.21 #187

Closed
mobarre opened this issue Aug 9, 2020 · 8 comments
Closed

indi_gpsd incompatible with gpsd 3.21 #187

mobarre opened this issue Aug 9, 2020 · 8 comments
Labels
bug Something isn't working

Comments

@mobarre
Copy link
Contributor

mobarre commented Aug 9, 2020

Here is the build error:

[ 84%] Building CXX object indi-gpsd/CMakeFiles/indi_gpsd.dir/gps_driver.cpp.o
/home/mobarre/AUR/libindi_3rdparty/src/indi-3rdparty-1.8.5/indi-gpsd/gps_driver.cpp: In member function ‘virtual IPState GPSD::updateGPS()’:
/home/mobarre/AUR/libindi_3rdparty/src/indi-3rdparty-1.8.5/indi-gpsd/gps_driver.cpp:252:18: error: ‘struct gps_data_t’ has no member named ‘status’
  252 |     if (gpsData->status == STATUS_NO_FIX)
      |                  ^~~~~~
make[2]: *** [indi-gpsd/CMakeFiles/indi_gpsd.dir/build.make:82: indi-gpsd/CMakeFiles/indi_gpsd.dir/gps_driver.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:2131: indi-gpsd/CMakeFiles/indi_gpsd.dir/all] Error 2
make: *** [Makefile:171: all] Error 2
``
The following comment has been left in gps.h:
      Move gps_data_t->status to gps_fix_t.status for better fix merging
       Add wspeedt, wspeedr, wanglem, wanglet, wangler to  gps_fix_t
       Remove unused gps_data_t.navadata_t.
       Add relPosL and relPosH to gps_fix_t.NED

Looking at their gitlab repo, it seems to have happened with release 3.21 of gpsd

Cheers !
@mobarre mobarre added the bug Something isn't working label Aug 9, 2020
@knro
Copy link
Collaborator

knro commented Aug 9, 2020

Any #ifdef patch to fix this by checking the version?

@knro
Copy link
Collaborator

knro commented Aug 9, 2020

@jochym What do you think?

@mobarre
Copy link
Contributor Author

mobarre commented Aug 9, 2020

#ifdef might work indeed !
in gps.h (from gpsd package) we have:

#define GPSD_API_MAJOR_VERSION  10      /* bump on incompatible changes */
#define GPSD_API_MINOR_VERSION  0       /* bump on compatible changes */

version 9.1 should have the former structure. 10.0 is the new one.

@knro
Copy link
Collaborator

knro commented Aug 9, 2020

Great, can you please submit a PR to check for this?

@mobarre
Copy link
Contributor Author

mobarre commented Aug 9, 2020

Sure, with pleasure ! Let me get my shit together, I might be able to send it today

@jochym
Copy link
Contributor

jochym commented Aug 9, 2020

I am afraid we will need to carry conditional code for some time. If you can submit the PR @mobarre , I can find some time to review this and we will get it fixed sooner. Otherwise it will need to wait at least a 5-10 days. I have a deadline coming ...

@mobarre
Copy link
Contributor Author

mobarre commented Aug 9, 2020

There you go :)

@knro
Copy link
Collaborator

knro commented Aug 13, 2020

Looks like the issue is fixed. Please reopen if still persists.

@knro knro closed this as completed Aug 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants