#19983 [Com]: Compile/Link failure w/Sablotron
| From: | michael at fishnet dot us | Date: | Thu, 25 Mar 2004 17:01:29 +0000 |
| Subject: | #19983 [Com]: Compile/Link failure w/Sablotron | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-56830@lists.php.net to get a copy of this message | ||
ID: 19983
Comment by: michael at fishnet dot us
Reported By: dahnke at adobe dot com
Status: Bogus
Bug Type: Compile Failure
Operating System: Mac OS X 10.2
PHP Version: 4.3.0-pre1
New Comment:
I found a thread at the url below that may be of help.
http://archive.gingerall.cz/archives/public/sablot2002/msg02266.html
"I moved the gcc -> c++3 link in /usr/bin aside and created a new link
gcc -> g++3 ... it's only used once in the build of sablot 0.96 but
this apparently is the problem part."
I just built and installed Sablotron with gcc -> g++3, and it now works
as a standalone app. I then moved the link back to gcc3 and compiled a
standalone PHP 4.3.5RC4 that is now working with the Sablotron module.
This is on an OSX 10.2.8 Titanium laptop with the Apple development
tools installed. I installed expat, libxml2, libxslt2, zlib, pcre, js
and Sablotron from source. My configuration follows.
./configure \
--enable-track-vars \
--enable-ftp \
--with-mysql \
--with-expat-dir=/usr/local \
--with-pcre \
--with-xml \
--with-dom \
--with-dom-xslt \
--with-dom-exslt \
--enable-xslt \
--with-xslt-sablot=/usr \
--with-sablot-js=/usr/local \
--with-zlib \
--with-openssl \
--disable-debug \
--disable-debugger
Previous Comments:
------------------------------------------------------------------------
[2004-03-14 09:11:02] dimo at angelhill dot net
Adding the PHP_ADD_LIBRARY(stdc++) to ext/xslt/config.m4 does allow you
to compile, however once a php script runs, apache dies with the same
error that you get when compiling....
dyld: /usr/sbin/httpd Undefined symbols:
__ZSt9terminatev
__ZTVN10__cxxabiv117__class_type_infoE
__ZTVN10__cxxabiv120__si_class_type_infoE
__ZTVN10__cxxabiv121__vmi_class_type_infoE
__ZdaPv
__ZdlPv
__Znam
__Znwm
___cxa_pure_virtual
___gxx_personality_v0
------------------------------------------------------------------------
[2004-03-04 14:13:44] php at munkyboy dot com
I ran into this issue as well. I'm running PHP 4.3.4 and Sablotron
1.0.1. There is a fairly easy fix for this. in "ext/xslt/config.m4" add
the line:
PHP_ADD_LIBRARY(stdc++)
somewhere before the line:
PHP_CHECK_LIBRARY(sablot, SablotSetEncoding...
don't forget to run buildconf.
------------------------------------------------------------------------
[2004-01-12 07:59:55] dave at xcalibre dot co dot uk
I don't think this defect should be in a "Bogus" state - this is a
confirmed defect with either the manner in which PHP or Sablotron is
looking for libraries.
PHP can be linked/installed fine using the LD_FLAGS=-lstdc++
environment variable during build time - however as soon as the PHP
library is loaded by Apache it dies.
This should either be updated in the documentation for one of these two
items.
------------------------------------------------------------------------
[2003-12-09 17:59:05] goose23 at spu dot edu
I have had this problem on a number of different Mac OS
X configurations, most recently on 10.3 w/ gcc3.3 (the
one with the dev tools from my panther disk), Sablot
-1.0.1, expat 1.95.5-4 from fink 0.6.2-cvs, and php4-
STABLE-200312092030.
this is my configure script:
./configure --with-expat-dir=/sw --enable-xslt --with-
xslt-sablot=/usr/local
I've added -lstdc++ to my environment (setenv LD_FLAGS
-lstdc++), to EXTRA_LDFLAGS, EXTRA_LDFLAGS_PROGRAM,
EXTRA_LIBS, and ZEND_EXTRA_LIB, in all reasonable
combinations.
I still get errors during sudo make install:
Installing PHP SAPI module: cgi
Installing PHP CGI into: /usr/local/bin/
Installing PEAR environment: /usr/local/lib/php/
dyld: /usr/local/src/php4-STABLE-200312092030/sapi/cli/
php Undefined symbols:
__ZSt9terminatev
__ZTVN10__cxxabiv117__class_type_infoE
__ZTVN10__cxxabiv120__si_class_type_infoE
__ZTVN10__cxxabiv121__vmi_class_type_infoE
__ZdaPv
__ZdlPv
__Znam
__Znwm
___cxa_pure_virtual
___gxx_personality_v0
make[1]: *** [install-pear-installer] Trace/BPT trap
make: *** [install-pear] Error 2
I am 99% sure that this is not a gcc2 vs gcc3 issue. Is
there anything I can do to test this possibility? FYI,
i'm using the same configure script and most software
versions on OS X as on OpenBSD-3.3: OpenBSD has zero
problems.
------------------------------------------------------------------------
[2003-03-24 21:04:59] sqlboy at playway dot net
This compile bug is in PHP 4.3.1 as well for the x86 platform.
I was able to get PHP to build and to run under apache by installing
Sablotron 0.98RC2, then condfiguring PHP with --enable-xslt
--with-xslt-sablot, then before typing make, I added the -lstdc++ line
to ZEND_EXTRA_LIBS in the make file. After building, apache starts
ok.
I'm using gcc 3.2.2, libtool 1.4.1 (1.922.2.34 2001/09/03 01:22:13) and
glibc 3.2.1.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/19983
--
Edit this bug report at http://bugs.php.net/?id=19983&edit=1