[python-sybase] Sybase 12.5, Solaris and blk_alloc

John J Lee jjl at pobox.com
Thu, 11 Mar 2004 09:34:42 +0000 (GMT Standard Time)


On Thu, 11 Mar 2004, Andrew McNamara wrote:
[...]
> I ask, because the error you reported doesn't say the library wasn't
> found, but rather that a symbol within the library wasn't found - which
> suggests to me that it found a library, but it was the wrong one. Is there

Sure.  I asked here about it because it seemed that setup.py setups up a
preprocessor macro that I suspected might have been intended to ifdef out
the offending use of blk_alloc on this particular setup.

[...]
> >>  My immediate thought would be a different library is
> >> being found at run-time compared to what setup.py sees (but this is just a
> >> guess).
> >
> >We should just need SYBASE set properly in the environment, right? (and
> >SYBASE_OCS, but I guess that's not the problem)  I thought I'd done that
> >right, but I can't swear to it.
>
> Uh - that would imply something somewhere was smart enough to use the
> variable to set the run-time library search path on the resulting shared
> library. Without something that fills the role of apache's apxs, this
> probably won't happen.
[...]

That something was me ;-)  I set LD_LIBRARY_PATH before importing the
module.

I just meant that SYBASE & SYBASE_OCS controls where setup.py finds things
(and LD_LIBRARY_PATH controls where ld finds them).

I'm pretty sure these were the values of the relevant environment
variables:

SYBASE /export/sybase/sybase_12.5
SYBASE_OCS OCS-12_5
LD_LIBRARY_PATH "/usr/local/lib:/export/sybase/sybase_12.5/OCS-12_5/lib"

Unless I messed that up somehow, it should work, right?


John