Am 06.10.2019 um 01:15 schrieb Justin Pryzby:
On Sat, Oct 05, 2019 at 11:43:23PM +0200, Christoph Zwerschke wrote:
..but I don't think it's a solution for pygres ? I tried it and still get a
symbol resolution error. So, unless someone knows or finds better, it means
there's nothing stopping installing of pygres compiled against one library with
an earlier library, even though that combination might be broken.
My #ifs and ifs don't help, and I suspect your setup.py stuff doesn't either (?)
When I tried building with setup.py, I noticed that Python links the
shared lib in a separate step after the compilation. Options for this
second step must be set in extra_link_args, not in extra_compile_args.
I also noticed in the output that the shared lib is linked with the
options -Wl,-Bsymbolic-functions and -Wl,-z,relro. Maybe this is what
defeats the lazy binding?
Unfortunately. adding the options for lazy loading to extra_link_args,
CFLAGS or LDFLAGS did not help, maybe because they are only appended
(added) to the options above, and only the first option is effective?
Running out of time, need to investigate when I find some time again.
Or maybe someone with more knowledge of these things can explain what's
going on here and how we can avoid the "undefined symbol" errors when
using an older libpq version.
-- Christoph
_______________________________________________
PyGreSQL mailing list
[email protected]
https://mail.vex.net/mailman/listinfo/pygresql