Re: Sybase_ct and tli lib
| From: | Brian Foddy | Date: | Fri, 15 Nov 2002 18:15:43 +0000 |
| Subject: | Re: Sybase_ct and tli lib | ||
| References: | 1 2 3 4 5 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-91111@lists.php.net to get a copy of this message | ||
I have a little more info to add. Our DBA opened a question to Sybase Tech support
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: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.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, USAOK, 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: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.m4This 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--- 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