Helpful Information
 
 
Category: DB2 Development
Compiling PHP with IBM DB2 support...

Hello everyone. I'm new here. I am having a problem when trying to compile PHP 4.3.1 with IBM DB2 8.1.

I read over the documentation for both PHP and IBM for compiling and installing. I have the database up and running correctly. I wanted to compile PHP so I could connect to the database through PHP.

Everything was going well. I downloaded the tarball, set my options and I was off. Here are the options I specified:

--with-mysql
--with-apxs=/usr/local/apache/bin/apxs
--with-ibm-db2=/home/db2insta/sqllib

That went well.
'Make' went well.

It is when I ran 'Make Install' did I run into a problem. Here is the output when I ran 'Make Install':

/home/downloads/php-4.3.1/sapi/cli/php: error while loading shared libraries: libdb2.so.1: cannot open shared object file: No such file or directory
make[1]: *** [install-pear-installer] Error 127
make: *** [install-pear] Error 2

Any ideas on what could be the problem? This is really kicking my butt. I could use help to get this resolved asap.

Thanks everyone. I appreciate your help.

binarydude

Anyone have any idea on what the problem may be?

Possible that PHP 4.3.1 and IBM DB2 v8.1 will not work together at this point?

This is making me pull my hair out.

Any help would be great.

Thank you.

BD

Hi, I'm getting the same error as this. I think it something to do with a library dependency error, see

# ldd /usr/src/apache/php-4.3.4/sapi/cli/php

libcrypt.so.1 => /lib/libcrypt.so.1 (0x40028000)
libmysqlclient.so.10 => /usr//lib/libmysqlclient.so.10 (0x40055000)
libresolv.so.2 => /lib/libresolv.so.2 (0x40086000)
libm.so.6 => /lib/tls/libm.so.6 (0x40098000)
libdl.so.2 => /lib/libdl.so.2 (0x400ba000)
libnsl.so.1 => /lib/libnsl.so.1 (0x400be000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
libz.so.1 => /usr//lib/libz.so.1 (0x400d4000)
libnss_files.so.2 => /lib/libnss_files.so.2 (0x400e2000)
libnss_dns.so.2 => /lib/libnss_dns.so.2 (0x400ee000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

Did you ever find a fix? I think my problem was either caused by an upgrade from RH 8 - RH 9, or the fact that I had another installation of perl (built from binaries, rather than source). Apparently this can happen if php tries to load an old copy of php.ini at compile (it shouldn't load any copy of php.ini apparently).

Still if you ever found the problem I'd be very grateful, as short of a reinstall of RH without apache I can't see a resolution here :)

Regards,

James

I suspect you have already fixed your problem but i figured i would post in case someone else had the same problem. The solution turned out to be pretty simple. The file 'libdb2.so.1' is located in the '/opt/IBM/db2/V8.1/lib/' directory (it may be slightly different if you installed in a different location). All i did was copy the 'libdb2.so.1' file into the '/usr/lib/' directory and the 'make install' command worked fine...










privacy (GDPR)