On 31/12/2020 14:12, Black Michael via wsjt-devel wrote:
Seems we had a problem on Linux WSJT-X builds as they are using the
hamlib shared library instead of static build.
I've already recommended they switch to static.
The problem crept up where one version of hamlib worked but another
was getting the wrong value for rig->caps->vfo_list since the caps
structure had changed.
What I'd like to do is work with the WSJT-X team to provide whatever
function calls you need to eliminate any references to the data
structures in hamlilb and prevent this problem in the future.
So at this point I know we maybe need a rig_get_caps(RIG *rig,
RIG_CAPS_VFO_LIST, value_t *value)
This function would allow querying any needed caps values and remove
the structure offset dependencies.
Thoughts?
Mike W9MDB
Mike,
binary packages released by the WSJT-X team use statically linked Hamlib
and have done so for several Years. That may change soon as Hamlib 4.0
is released. We are not responsible for packages added to repositories
by package maintainers, but they may well be constrained by Linux
distribution rules that do not allow static linking.
Any current direct data structure accesses are probably because no
alternatives were available at the time the code was written. If such
structures are not part of the public API of Hamlib then your first step
should be removing the definitions of those structures from the public
header files and providing access via opaque pointers and API functions.
73
Bill
G4WJS.
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel