Bug #17604 Updated: Apache 2/MySQL/PHP4/Sablotron Will not compile
| From: | sniper@php.net | Date: | Mon, 17 Jun 2002 18:36:47 +0000 |
| Subject: | Bug #17604 Updated: Apache 2/MySQL/PHP4/Sablotron Will not compile | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-10913@lists.php.net to get a copy of this message | ||
ID: 17604
Updated by: sniper@php.net
Reported By: kevin@kevinfries.com
-Status: Open
+Status: Feedback
Bug Type: Compile Failure
Operating System: Solaris 8 IA
PHP Version: 4.2.1
New Comment:
I'd update to GCC 3.1 too..please let us know what the results are.
Previous Comments:
------------------------------------------------------------------------
[2002-06-17 04:25:28] markonen@php.net
I guess the right thing to do would be to use the 'g++'
driver for linking when there's c++ code involved.
Alternatively you can try the driver in verbose mode to see
how it invokes ld (all the libs you need will be on the
link line).
These libraries are, IIRC, platform and GCC version
specific, so they cannot easily be added to PHP by default.
So using g++ would be the preferred solution here.
And Kevin, for the love of God, upgrade to gcc 3.1.
------------------------------------------------------------------------
[2002-06-17 04:21:26] pavel@gingerall.cz
One more link
<http://www.ucmb.ulb.ac.be/documents/libg++_2.7.1/g++FAQ_16.html>
------------------------------------------------------------------------
[2002-06-17 04:05:08] pavel@gingerall.cz
-lgcc_s looks good (according to Kevin's recent comment)
Here is link to libtool documentation (no good news there)
<http://www.gnu.org/software/libtool/manual.html#C++%20libraries>
------------------------------------------------------------------------
[2002-06-17 03:55:21] pavel@gingerall.cz
I'm sorry libstdc++ is nonsense. Sorry for this. Sablotron doesn't use
the standard c++ libs. What is usually missing is something like lgcc.
Take this comment as five beer voucher (valid in Prague only), for
geek, who finds the appropriate library for given configuration :)
------------------------------------------------------------------------
[2002-06-17 01:17:05] kevin@kevinfries.com
OK, did as you asked. You are going to really love this one:
First I did the ldd command as you asked, and it said:
bash-2.0LDFLAGS="-lstdc++" ./configure --with-mysql --enable-xslt
--with-xslt-sablot --enable-track-vars --with-apxs2
bash-2.05$ ldd
which sabcmd
libsablot.so.0 => /usr/local/lib/libsablot.so.0
libexpat.so.0 => /usr/local/lib/libexpat.so.0
libstdc++.so.3 => /usr/local/lib/libstdc++.so.3
libm.so.1 => /usr/lib/libm.so.1
libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1
libc.so.1 => /usr/lib/libc.so.1
libdl.so.1 => /usr/lib/libdl.so.1
Then I went back to my PHP source, and issued:
bash-2.05# LDFLAGS="-lstdc++" ./configure --with-mysql --enable-xslt
--with-xslt-sablot --enable-track-vars --with-apxs2
followed by a make and make install. Then I tried to do a start of
apache:
bash-2.05# apachectl start
Syntax error on line 230 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/modules/libphp4.so into server: ld.so.1:
/usr/local/apache/bin/httpd: fatal: relocation error: file
/usr/local/apache/modules/libphp4.so: symbol mysql_field_count:
referenced symbol not found
./apachectl start: httpd could not be started
changing --with-mysql to --with-mysql=/usr/local/mysql in the configure
command, issuing a new make and make install, then trying to start
bash-2.05$ sudo apachectl start
Syntax error on line 230 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/modules/libphp4.so into server: ld.so.1:
/usr/local/apache/bin/httpd: fatal: relocation error: file
/usr/local/lib/libsablot.so.0: symbol
_ZTVN10__cxxabiv120__si_class_type_infoE: referenced symbol not found
apachectl start: httpd could not be started
I feel like I am on a Merry-Go-Round. No matter what I try, I keep
ending up in the same place.
Kevin Fries
------------------------------------------------------------------------
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/17604
--
Edit this bug report at http://bugs.php.net/?id=17604&edit=1