ID:               19983
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
 Status:           Feedback
 Bug Type:         Compile Failure
 Operating System: Mac OS X 10.2
 PHP Version:      4.3.0-pre1
 New Comment:

Additionally: which libtool are you using?
In the current CVS version of libtool ('libtool 1.4e'), there are a
number of fixes regarding to C++ support.

Additionally - set CFLAGS=-O0 to ensure that gcc 3.x is not breaking
code, during it's optimisation.

However - if the work-around you are describing is the only thing that
does work, we will look into it.


Previous Comments:
------------------------------------------------------------------------

[2002-10-18 17:27:15] [EMAIL PROTECTED]

Let's first make the configure line correcT:
please remove:
--enable-sablot
--enable-sablot-errors-descriptive 

These belong to the extinct version of the extension. If you are using
the latest snapshot, this options should not list in the:
./configure --help
output.

------------------------------------------------------------------------

[2002-10-18 17:10:25] [EMAIL PROTECTED]

Which sablotron version?


------------------------------------------------------------------------

[2002-10-18 16:51:03] [EMAIL PROTECTED]

I tried the latest version. The same problem occurs.

------------------------------------------------------------------------

[2002-10-18 15:50:55] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php4-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-latest.zip

------------------------------------------------------------------------

[2002-10-18 13:33:06] [EMAIL PROTECTED]

When I try to include Sablotron support, I am unable to 
link without modifying the Makefile. I am trying to build 
on Mac OS X v10.2 (Jaguar) with gcc v3.1.

My configure line looks like this:
./configure \
       --prefix=/DCServers/php_server/php \
       --enable-sablot-errors-descriptive \
        --with-sablot \
              --with-xslt-sablot \
              --enable-xslt \
              --enable-debug

When I run make I get the following error:
ld: warning -L: directory name (/lib) does not exist
ld: Undefined symbols:
vtable for __cxxabiv1::__class_type_info
vtable for __cxxabiv1::__si_class_type_info
operator delete[](void*)
operator delete(void*)
operator new(unsigned long)
___gxx_personality_v0
operator new[](unsigned long)
std::terminate()
vtable for __cxxabiv1::__vmi_class_type_info
___cxa_pure_virtual
make: *** [libs/libphp4.bundle] Error 1

However, if I edit the Makefile between the configure and 
make steps, such that I add the lstdc++ library to the end 
of the variable ZEND_EXTRA_LIBS everything works. There 
seems to be an ordering problem with the lstdc++ library 
which makes it necessary to have it be the last library 
included before the -o part of the link commands. I tried 
to set various flags on the configure line, like 
ZEND_EXTRA_LIBS or LDFLAGS, to "-lstdc++", but could not 
get the lstdc++ library to be the absolutely last thing 
linked.

Please let me know if I can be of assistance with debugging 
this.



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=19983&edit=1

Reply via email to