[ ] Since we now have DEB packages for the ZWO SDK libraries: in our makefiles, get rid of junk like -Wl,-rpath that we used to need to explicitly specify the path to the ZWO shared library.
Well, actually, we may still need this for zwo_fixer unless we install that to a system path...
[x] If possible: make zwo_fixer no longer require ZWO SDK version targeting information at compile time (via the makefile), and instead automatically detect the version it's running on at runtime, and apply the appropriate offsets for that version.
Either use the ASI version API if that exists (can't remember), or find a more hacky way to do it.
Good, this does exist: ASICAMERA_API char* ASIGetSDKVersion(); (find via libdl probably)
Either make the main program error-exit, or at least print a loud warning, if the version detected is not supported (i.e. we don't have offsets for it).
Organize the version-specific offset constants into some kind of neat table in the internal header.
Figure out what our exact linking situation is... does zwo_fixer link to libASICamera2.so, or does it rely on the main program linking to it to transitively link thereto? (This could complicate things, potentially.)
Good: zwo_fixer does not itself link to libASICamera2.so, so that should make things easier on us.
Two main things to do here:
-Wl,-rpath
that we used to need to explicitly specify the path to the ZWO shared library.zwo_fixer
unless we install that to a system path...zwo_fixer
no longer require ZWO SDK version targeting information at compile time (via the makefile), and instead automatically detect the version it's running on at runtime, and apply the appropriate offsets for that version.ASICAMERA_API char* ASIGetSDKVersion();
(find vialibdl
probably)zwo_fixer
link tolibASICamera2.so
, or does it rely on the main program linking to it to transitively link thereto? (This could complicate things, potentially.)zwo_fixer
does not itself link tolibASICamera2.so
, so that should make things easier on us.