ID: 22595 User updated by: web at affenkrieger dot de Reported By: web at affenkrieger dot de Status: Open Bug Type: Sybase-ct (ctlib) related Operating System: Mandrake Linux 9.0 PHP Version: 4.2.3 New Comment:
Ah, i forgot to make clear that the PHP extension should be linked against $SYBASE/lib/libintl.so and not against that one in /lib, which has unfortunately the same name. Previous Comments: ------------------------------------------------------------------------ [2003-03-07 16:40:00] web at affenkrieger dot de Hi, i tried to compile and use the Sybase-CT extension of PHP, but it won't work. Here we go: I have a Mandrake Linux 9.0 system with a fully configured Apache + PHP webserver. PHP 4.2.3 works fine as a Apache module. I downloaded the sources of PHP 4.2.3 from php.net and compiled the Sybase-CT extension as a shared object: $ ./configure --with-apxs=/path/to/apxs --with-sybase-ct=shared,/opt/sybase-11.9.2 The Sybase ASE 11.9.2 resides in /opt/sybase-11.9.2, the libs are available under /opt/sybase-11.9.2/lib Compilation works fine, but when i include the new .so in the PHP.ini and restart the Apache webserver, it throws this warning into the error_log: > PHP Warning: Unable to load dynamic library > '/usr/lib/php/extensions/sybase_ct.so' - > /opt/sybase-11.9.2/lib/libsybtcl.so: undefined symbol: > comn_free in Unknown on line 0 Trying to use Sybase functions in PHP result in segmentation faults. $ ldd sybase_ct.so libinsck.so => /opt/sybase-11.9.2/lib/libinsck.so (0x40008000) libsybtcl.so => /opt/sybase-11.9.2/lib/libsybtcl.so (0x4000b000) libintl.so.2 => /lib/libintl.so.2 (0x40038000) ^^^^^^^^^^^^^^^^ libcomn.so => /opt/sybase-11.9.2/lib/libcomn.so (0x40040000) libct.so => /opt/sybase-11.9.2/lib/libct.so (0x40098000) libcs.so => /opt/sybase-11.9.2/lib/libcs.so (0x400f5000) libc.so.6 => /lib/i686/libc.so.6 (0x40102000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) It seems that the sybase_ct.so has been linked to a wrong library in /lib, instead of $SYBASE/lib, and i found no way to tell the system, to use the Sybase one. /usr/lib/libintl.so & /lib/libintl.so.2 are symlinks to /lib/libintl.so.2.0.1 It seems to be a lib of the "gettext" program. Yes, $SYBASE/lib is added to /etc/ld.so.conf Yes, the Sybase lib are correctly listed by 'ldconfig -p' No, setting LD_LIBRARY_PATH doesn't affect the result of ldd No, normally LD_LIBRARY_PATH isn't set at all. DBD::Sybase works fine with Sybase ASE. Micheal Peppler wrote in sybase.public.ase.linux (news:[EMAIL PROTECTED]) that it might be a PHP compilation problem, and he knows a bit of that Sybase stuff ;-) Regards, Nils. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=22595&edit=1