PHP 4.0 Bug #6868 Updated: libphp4.so: undefined symbol: zendtext
| From: | sniper@php.net | Date: | Wed, 01 Nov 2000 16:02:12 +0000 |
| Subject: | PHP 4.0 Bug #6868 Updated: libphp4.so: undefined symbol: zendtext | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-36663@lists.php.net to get a copy of this message | ||
ID: 6868
Updated by: sniper
Reported By: mrsizer@home.com
Status: Feedback
Bug Type: Apache related
Assigned To:
Comments:
Please try a snapshot from http://snaps.php.net/
--Jani
Previous Comments:
---------------------------------------------------------------------------
[2000-10-02 13:06:01] mrsizer@home.com
Further Research:
It's the .la files. They aren't working (and I have no clue
what they are).
If I type the link line for the /Zend make, ld says it
doesn't understand the format of the .la files. If I replace
the .la files with the .lo files they were created with, ld
is happy.
Continuing the php make from this point gets rid of all zend
undefined symbols when starting apache, but now prce_malloc
is undefined at that time. You use .la files A LOT. I'd
rather not build php one directory at a time by hand.
I'm using gcc-2.95.2. I started with binutils-2.9.5.0.22,
but rolled back to 2.9.1.0.23 - no change.
---------------------------------------------------------------------------
[2000-09-26 16:09:15] mrsizer@home.com
Further research:
It appears that libtool is not working.
The zendtext symbol is in zend_indent.lo and
zend_highlight.lo but not in LibZend.la
I found this out by modifying the code to have a zendtext in
it. That just resulted in other symbols which were not
defined. Adding LibZend_c.la to the generated Makefile
helped, but undefined symbols still kept cropping up.
BTW: this happens with 4.0.0, too. I thought falling back a
version might help - it didn't.
---------------------------------------------------------------------------
[2000-09-23 23:56:15] mrsizer@home.com
Newly downloaded php-4.0.2
( ./configure --with-apxs=/usr/local/apache/bin/apxs --with-mysql )
warned me that I had neither bison nor byacc.
make
make install
both clean
Apache 1.3.12
( ./configure --enable-module=most --enable-shared=max )
make
make install
both clean - served pages fine before the php make install
/usr/local/apache/bin/apachectl configtest
generates the libphp4.so: undefined symbol: zendtext error.
grepping the Zend directory, it appears to be a valid error, although why it didn't show up in
the link I have no idea.
zend_indent.c and zend_highlight.c both contain an "extern zendtext char*;" declaration
and a "#define zendtext ((char *) zend_get_zendtext(CLS_C))"
All other references are usage, not declarations or definitions (there is one
"zendtext[i]++" in zend_indent.c which makes no sense, given the #define)
That extern char* is not, according to grep, defined anywhere.
Thanks,
- Mark R. Sizer
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=6868