and received the following reply:
The tli library was the Sybase network driver on Solaris. Since we had customers facing CR 186487, which arose from Sun Bug 1218173, a request for an interrupt-safe malloc() that Sun had decided not to fix, Sybase switched to the socket based driver, libinsck, on Solaris with OC 12.0 and EBF #4.
It is possible that some component in your environment uses this tli library or a libtcl from a version of 12.0 netlib (libtcl) that used to look for libtli.so. When you start as 'root' maybe it picks up a different version and/or uses different environment variables that control the load library path. Nevertheless, from what this sounds there is definitely some sort of mismatch between the version used to build the webserver and the version currently in the load library path.
I agree with his assessment that somehow, our root user is getting a different run path, but frankly
I can't find it. Anyway, it seems that there is a sizeable amount of evidense that libtli should
be linked on all Solaris builds if its present. Which agrees with most of my experience.
Hope this helps.
Brian
Brian Foddy wrote:
Timm Friebe wrote:On Wed, 2002-11-13 at 18:03, Brian Foddy wrote:
Timm,
I've seen it used for 10 years on Solaris, and I spent about
a year working on Irix and Informix, and there were some
references to it there also. strings libtli.so | grep "^Sybase"
Sybase TCP/IP TLI Library/12.0/P/SPARC/Solaris 2.5.1/1/OPT/Sat Sep 25 21:07:40 1999
Sybase, Inc. All rights reserved.
Sybase, Inc. 6475 Christie Avenue, Emeryville, CA 94608, USA
OK, so it should probably be added for those systems.
A line like this should be added to config.m4 (wrapped for readability),
could you provide the second parameter here:
PHP_CHECK_LIBRARY(
tli, ---???---,
[PHP_ADD_LIBRARY(tli,,SYBASE_CT_SHARED_LIBADD)],
[],
[-L$SYBASE_CT_LIBDIR]
)
or is maybe the pure existance of this file enough:
I'm not familiar with what the second arg of this macro does. In our environment, which I've work on Solaris/Sybase for 10 yrs, we always include it by default.thekid@friebes:~/devel/php/php4 > cvs diff ext/sybase_ct/config.m4 Index: ext/sybase_ct/config.m4
===================================================================
RCS file: /repository/php4/ext/sybase_ct/config.m4,v
retrieving revision 1.11
diff -u -r1.11 config.m4
--- ext/sybase_ct/config.m4 12 Mar 2002 16:36:30 -0000 1.11
+++ ext/sybase_ct/config.m4 14 Nov 2002 12:07:33 -0000
@@ -44,7 +44,11 @@
],[ $SYBASE_CT_LIBS ])
- +
+ if test -f $SYBASE_CT_LIBDIR/libtli.so ; then
+ PHP_ADD_LIBRARY(tli,, SYBASE_CT_SHARED_LIBADD)
+ SYBASE_CT_LIBS="$SYBASE_CT_LIBS -ltli"
+ fi
This looks fine. I still wish I knew why it seems to work with root permissions, and not with sudo; and in general knew more about this bugger. Maybe I'll just ask our Sybase DBA to open a case with Sybase and get the official answer. If I hear more, I'll pass it along. Thanks, Brian
-- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php