ID:               21789
 User updated by:  [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
 Status:           Open
 Bug Type:         Compile Failure
 Operating System: Solaris 8
 PHP Version:      4.3.0
 New Comment:

Thanks for the notes. The fix you described was similar to what I
actually did to solve the problem, but since it was happening under
Solaris 8, the solution wasn't exactly as described. I would like to
suggest the addition of a flag (--enable-stdc++) to the configure
script so that the same operation could be achieved more easily by any
user having similar problems, regarless of platform, OS or shell. 

Ron.


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

[2003-01-24 15:56:48] [EMAIL PROTECTED]

Duplicate: bug 19983

Notes: fix for the libsablot.so compile errors during php-4.3.0 make:

[sablotron-0.97 with php-4.3.0 on redhat linux 8.0]

1. rpm -U expat-1.95.5-1.i386.rpm
2. rpm -i sablotron-0.97-1.i386.rpm
3. rpm -i sablotron-devel-0.97-1.i386.rpm
4. rpm -e php   //current version 4.2.2
5. remove the packages dependent on php-4.2.2 if preceding command
fails
because of dependencies

6. install httpd-2.0.44
// this fixes the error related to missing file 'instdso'. note that
apache2 

7. add following line to /root/.bashrc
export LDFLAGS='-lstdc++'

// as explained earlier in this bug report, the undefined references
are
in the stdc++ libraries. Pavel Hlavnicka from Ginger Alliance
suggested
exporting the c++ compiler flag.

7. cd /usr/local/php/php-4.3.0
8. .configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql
--with-zlib --with-dom --with-gd --enable-xslt --with-xslt-sablot
--with-sablot-js
9. make
10. make install

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

[2003-01-21 07:30:51] [EMAIL PROTECTED]

Yes, Sablotron was compiled with the same version of GCC.

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

[2003-01-21 01:15:41] [EMAIL PROTECTED]

Was the sablot compiled also with that same GCC version?


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

[2003-01-20 23:43:57] [EMAIL PROTECTED]

With GCC 3.2.1 these symbols can be found in libstdc++. When php 4.3.0
is linked with -lsablot, there is no easy way to link it to stdc++, to
account for the changes of the locations of these functions in the new
GCC API. I would recommend a configure option like --enable-stdc++ to
allow the user to link this manually like --enable-libgcc. 

excerpt from compile :

.lo main/internal_functions_cli.lo -lsablot -liconv -lexpat -liconv
-lcurl -lcrypt -lresolv -lm -ldl -lnsl -lsocket -lgcc -lcrypt -lcurl
-lz -lssl -lcrypto -ldl -lsocket -lnsl -lz  -o sapi/cli/php
Undefined                       first referenced
 symbol                             in file
__cxa_pure_virtual                  /usr/local/lib/libsablot.so
vtable for __cxxabiv1::__si_class_type_info/usr/local/lib/libsablot.so
vtable for
__cxxabiv1::__vmi_class_type_info/usr/local/lib/libsablot.so
operator new[](unsigned)            /usr/local/lib/libsablot.so
vtable for __cxxabiv1::__class_type_info/usr/local/lib/libsablot.so
operator delete(void*)              /usr/local/lib/libsablot.so
operator new(unsigned)              /usr/local/lib/libsablot.so
__gxx_personality_v0                /usr/local/lib/libsablot.so
operator delete[](void*)            /usr/local/lib/libsablot.so
ld: fatal: Symbol referencing errors. No output written to
sapi/cli/php
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1
bash-2.03# gcc --version
gcc (GCC) 3.2.1
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.

bash-2.03# 



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


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

Reply via email to