|
From: | Fred Wright |
Subject: | Re: ✘"Can't find packet library") |
Date: | Tue, 28 Jul 2020 21:14:27 -0700 (PDT) |
User-agent: | Alpine 2.23 (OSX 453 2020-06-18) |
On Tue, 28 Jul 2020, Gary E. Miller wrote:
Changes to gps/packect.pu.in pushed. It now works for me on Linux and macOS. Both uninstalled in the build directory, and out of the build directory after insstall. The new code looks in the current directory (so it works w/o install), then in GPSD_HOME, and then in the "standard" library locations as defined by the local dlopen() function from libc. dlopen() does what you expext, looking in LD_LIBRARY_PATH, /lib, etc. Please test, this would have been annoying if it had shipped in 3.21.
It makes more sense to install this library in the Python package directory, with the other modules. Although it's a C library, it's sole purpose is to be used by the Python code, so there's no reason to put it in a normal C/C++ library location. And it's a whole lot easier to find when it's "beside" packet.py.
I tested a fix that does this, and pushed it to a test branch (pylib-fixes). Feel free to test further.
There is an oddity which is just aethetic AFAIK. Its own internal copy of its path is still based on the usual install location, and I haven't figured out how to convince SharedLibrary not to do that. But since nothing actually links against this library, it shouldn't matter.
Fred Wright
[Prev in Thread] | Current Thread | [Next in Thread] |