php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #8913 undefined symbol SQLParamData
Submitted: 2001-01-25 14:34 UTC Modified: 2001-01-27 21:27 UTC
From: lorenb at 420consulting dot com Assigned:
Status: Closed Package: Apache related
PHP Version: 4.0.4pl1 OS: Debian 2.2
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please !
Your email address:
MUST BE VALID
Solve the problem:
44 - 27 = ?
Subscribe to this entry?

 
 [2001-01-25 14:34 UTC] lorenb at 420consulting dot com
I compiled PHP 4.0.4p1 today, with the following options:

./configure --with-apxs=/opt/apache/bin/apxs
--with-ibm-db2=/usr/IBMdb2/V7.1

It compiles fine, but when I try and load Apache it fails
with this error:

Cannot load /opt/apache/libexec/libphp4.so into server:
/opt/apache/libexec/libphp4.so: undefined symbol: SQLParamData

When I do an 'ldd' on it, I get the following:

libdb2.so.2 => /usr/lib/libdb2.so.2
libdl.so.2 => /usr/libdl.so.2
libresolv.so.2 => /lib/libresolv.so.2
libm.so.6 => /lib/libm.so.6
libcrypt.so.1 => /lib/libcrypt.so.1
libnsl.so.1 => /lib/libnsl.so.1
libc.so.6 => /lib/libc.so.6
/lib/ld-linux.so.2 => /lib/ld-linux.so.2

I'm not sure what the problem is.  When I tried to
investigate this error, I found some information about this
coming up when compiling PHP with something called 'Solid'.

My system is as follows:

Debian GNU/Linux 2.2
Kernel v2.4.0

apache: v1.3.14
php: v4.0.4p1
gcc: v2.95.3






Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-01-25 15:22 UTC] kalowsky@php.net
With regards to the SOLID part.  This has been delt with and corrected since about PHP 4.0.3pl1.  It was basically an incorrect linking of libraries done by PHP to the weird SOLID libraries.  

I'm not totally familiar with the DB2 layout, but it sounds like you did not properly link in your libraries files.  Check your configure log, and double check that they do exist where configure says they do.
 [2001-01-27 03:06 UTC] lorenb at 420consulting dot com
I finally managed to figure out the problem I was having.  I went into my
/usr/IBMdb2/V7.1/lib directory and verified that libdb2.so existed.  It was there,
but it was called libdb2.so.1.

I created a symbolic link from libdb2.so -> libdb2.so.1 in that directory, and then
re-compiled PHP.  apache now loads and everything looks good.   When I do an 'ldd' on the libphp4.so, I now get:

libdb2.so.1 => /usr/IBMdb2/V7.1/lib/libdb2.so.1
libdl.so.2 => /lib/libdl.so.2
libresolv.so.2 => /lib/libresolv.so.2
libm.so.6 => /lib/libm.so.6
libcrypt.so.1 => /lib/libcrypt.so.1
libnsl.so.1 => /lib/libnsl.so.1
libc.so.6 => /lib/libc.so.6
libpthread.so.0 => /lib/pthread.so.0
libstdc++-libc6.1-1.so.2 => /usr/lib/libstdc++-lib6.1-2.so.2
/lib/ld-linux.so.2 => /lib/ld-linux.so.2

I'm not sure if this is a bug in PHP, or was just related to my DB2 installation.  I'm using a Debian system, but DB2 is distributed as in .rpm format.  I just converted the .rpms to .tgz files and then installed it by hand.   







 [2001-01-27 21:27 UTC] sniper@php.net
Broken db2 install -> closed.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun Mar 03 06:01:30 2024 UTC