#19983 [Com]: Compile/Link failure w/Sablotron
| From: | llaguno at rogers dot com | Date: | Thu, 23 Jan 2003 05:25:59 +0000 |
| Subject: | #19983 [Com]: Compile/Link failure w/Sablotron | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-31035@lists.php.net to get a copy of this message | ||
ID: 19983
Comment by: llaguno@rogers.com
Reported By: dahnke@adobe.com
Status: Bogus
Bug Type: Compile Failure
Operating System: Mac OS X 10.2
PHP Version: 4.3.0-pre1
New Comment:
Compile errors with Sablotron during php make on Redhat linux 8.0
I was just wondering if you can help me figure out the following errors
during php make.
Note that environment is as follows:
expat-1.95.5-1
sablotron-0.97-1
php-4.2.2-8.0.5 (current, want to upgrade to 4.3.0)
httpd-2.0.40-8 (redhat linux 8.0)
The problem occurs even after I erased the php-4.2 rpm.
---------------------
> cd /usr/local/php/php-4.3.0
> ./configure --enable-xslt --with-xslt-sablot --with-zlib
....
> make
ext/mysql/libmysql/my_tempnam.o: In function `my_tempnam':
/usr/local/php/php-4.3.0/ext/mysql/libmysql/my_tempnam.c:103: the use
of
tempnam' is dangerous, better use mkstemp'
/usr/local/lib/libsablot.so: undefined reference to `operator
new[](unsigned)'
/usr/local/lib/libsablot.so: undefined reference to `vtable for
__cxxabiv1::__si_class_type_info'
/usr/local/lib/libsablot.so: undefined reference to `operator
delete(void*)'
/usr/local/lib/libsablot.so: undefined reference to
`__gxx_personality_v0'
/usr/local/lib/libsablot.so: undefined reference to
`__cxa_pure_virtual'
/usr/local/lib/libsablot.so: undefined reference to `vtable for
__cxxabiv1::__class_type_info'
/usr/local/lib/libsablot.so: undefined reference to `operator
delete[](void*)'
/usr/local/lib/libsablot.so: undefined reference to `vtable for
__cxxabiv1::__vmi_class_type_info'
/usr/local/lib/libsablot.so: undefined reference to `operator
new(unsigned)'
collect2: ld returned 1 exit status
make: *** [sapi/cgi/php] Error 1
> make install --> same results as above
I would really appreciate your help.
Thanks in advance, Manny
Previous Comments:
------------------------------------------------------------------------
[2002-12-27 15:07:38] rwelti@yahoo.com
Just got the first 4.3.0 release and cannot build
under Solaris due to "line too long" when attempting
make. That is followed, of course, with millions of
undefined symbols.
my configure:
./configure \
--with-apache=/apa/ \
--with-jpeg-dir=/usr/local \
--with-zlib-dir=/usr/local \
--with-jpeg-dir=/usr/local \
--with-png-dir=/usr/local \
--with-gd \
--with-oci8=/export/home/orahome \
--enable-ftp \
--enable-sockets \
--with-pdflib \
--with-ming >configure.log 2>&1 &
all goes fine until attempt "make"
(both solaris and gnu makes same)
NO DICE.
------------------------------------------------------------------------
[2002-12-18 11:55:34] msopacua@php.net
The problem __really__ is, combining gcc3 and gcc2 suite, as outlined
in this document:
http://fink.sourceforge.net/doc/porting/preparing.php
Secondly - if any warnings/errors occur as mentioned in the document
above (libtool stuff), the links to patches for those are provided. PHP
already has this covered.
The following works:
1) configure expat, using gcc2 explicetely:
CC=gcc2 \
./configure \
--prefix=/your/prefix
2) configure libiconv, the same way:
CC=gcc2 \
./configure \
--prefix=/your/prefix
3) configure Sablotron (tested with 0.97RC2) using:
CC=gcc2 \
CXX=g++2 \
./configure \
--prefix=/your/prefix \
--with-expat-prefix=/your/prefix \
--with-iconv-prefix=/your/prefix
PHP can then be configured, using:
CC=gcc2 \
CXX=g++2 \
./configure \
--prefix=/your/prefix \
--disable-cgi \
--enable-xslt \
--with-xslt-sablot=/your/prefix \
--with-expat-dir=/your/prefix \
--with-iconv-dir=/your/prefix
I guess the same applies to gcc3, but you have to make sure, that all
libs you include, are compiled with gcc3/g++3 then.
------------------------------------------------------------------------
[2002-12-17 13:57:23] monan@acm.org
I don't think his workaround works... Putting the -lstdc++
on the end of the ZEND_EXTRA_LIBS variable enables
everything to make, but I cannot make install and I
certainly can't run with Apache... I get similar errors
that bchesneau@mac.com (above) gets. I know this is kind
of a 'me too' response, but I want to emphasize that there
is NO workaround. Thanks!
During make install:
Installing PHP CLI binary: /usr/local/bin/
Installing PEAR environment: /usr/local/lib/php/
dyld: /usr/local/src/build-php-4.3.0RC3/php-4.3.0RC3/sapi/
cli/php Undefined symbols:
__ZTVN10__cxxabiv117__class_type_infoE
__ZTVN10__cxxabiv120__si_class_type_infoE
__ZdaPv
__ZdlPv
__Znwm
___gxx_personality_v0
__ZSt9terminatev
__Znam
__ZTVN10__cxxabiv121__vmi_class_type_infoE
___cxa_pure_virtual
make[1]: *** [install-pear-installer] Trace/BPT trap
make: *** [install-pear] Error 2
------------------------------------------------------------------------
[2002-12-17 04:29:14] msopacua@php.net
As the original reporter provides a work-around, I'm re-opening this
bug-report, and see if we're able to make some configure hack, that
strips all instances of -lstdc++ and adds one to the end of the linking
process.
------------------------------------------------------------------------
[2002-11-18 05:00:53] bchesneau@mac.com
make ./configure --prefix=/usr --with-apxs=/usr/sbin/apxs
--mandir=/usr/share/man --infodir=/usr/share/info
--with-config-file-path=/etc/httpd --enable-calendar
--with-iconv=/usr/local --enable-exif --enable-ftp --enable-wddx
--with-xml --with-zlib --with-curl=/usr --with-gd=/usr/local
--with-jpeg-dir=/usr/local --with-png-dir=/usr/local
--with-imap=../imap-2002.RC10 --with-imap-ssl=/usr --enable-sablot
--enable-sablot-errors-descriptive --enable-xslt
--with-xslt-sablot=/usr/local --with-mcrypt=/usr/local
--with-mhash=/usr/local --with-mysql=/usr/local/mysql
--with-expat-dir=/usr/local
modified ZEND_EXTRA_LIBS in Makefile before make
make is ok
but when I did sudo make install :
dyld: /Users/benoitc/build/php-4.3.0RC1/sapi/cli/php Undefined
symbols:
__ZTVN10__cxxabiv117__class_type_infoE
__ZTVN10__cxxabiv120__si_class_type_infoE
__ZdaPv
__ZdlPv
__Znwm
___gxx_personality_v0
__ZSt9terminatev
__Znam
__ZTVN10__cxxabiv121__vmi_class_type_infoE
___cxa_pure_virtual
make[1]: *** [install-pear-installer] Trace/BPT trap
make: *** [install-pear] Error 2
------------------------------------------------------------------------
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