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

Link against minor libiio soname version #36

Open
FFY00 opened this issue Sep 13, 2020 · 3 comments
Open

Link against minor libiio soname version #36

FFY00 opened this issue Sep 13, 2020 · 3 comments

Comments

@FFY00
Copy link

FFY00 commented Sep 13, 2020

It looks like the libiio API can change in minor soname bumps, so we should be linking against the minor soname version. Currently libad9361 is linking against libiio.so.0 but it should be linking against libiio.so.0.21.

@zuckschwerdt
Copy link
Contributor

0.21 seems to be the latest version. Are there API or ABI changes with current master?

@guruofquality
Copy link
Contributor

The script for cmake above should be finding libiio.so which is also a symlink.

  • libiio.so should point to the ABI specific library symlink which is libiio.so.0
  • then libiio.so.0 points to the specific actual library with version info libiio.so.0.21

If developers do it right, you wont see an ABI issue because of the symlinks, but many times the ABI changes and the number does not get bumped. I would guess that libiio.so.0 has never seen an ABI increment. Therefore you have to recompile when the iio library is reinstalled.

@FFY00
Copy link
Author

FFY00 commented Sep 13, 2020

Yes, that is exactly the issue. Because the libiio upstream does not provide proper ABI increments, I think soapyplutosdr should link to libiio.so.0.21 so that we do not see random hard to track crashes.

In Arch Linux we are rebuilding on every libiio update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants