Bug #17604 Updated: Apache 2/MySQL/PHP4/Sablotron Will not compile
| From: | kevin at kevinfries dot com | Date: | Wed, 05 Jun 2002 07:36:51 +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-9517@lists.php.net to get a copy of this message | ||
ID: 17604
Updated by: kevin@kevinfries.com
Reported By: kevin@kevinfries.com
Status: Open
Bug Type: Compile Failure
Operating System: Solaris 8 IA
PHP Version: 4.2.1
New Comment:
Oops, sorry, coppied from my newsnet posting that got no response, and
I forgot to reference the apache startup error that is referenced in
this message:
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 : symbol
_ZTVN10__cxxabiv120__si_class_type_infoE: referenced symbol not found
apachectl start: httpd could not be started
Previous Comments:
------------------------------------------------------------------------
[2002-06-05 03:33:08] kevin@kevinfries.com
Platform Details:
P-II 400/384MB Ram
Solaris 8 IA
Apache 2.0.36 Options +Includes +FollowSymLinks
MySQL 3.23.49
I am trying to get this blessed server to compile and install.
Apache runs great, no problem there, CGIs work, SSI works, everything
OK. MySQL works. I can run the mysqladmin and everything is fine.
I am trying to compile PHP with sablotron xslt extention, and expat.
sabcmd (version 0.90) runs fine from the command line against expat
1.95.2. All installed in /usr/local/lib and /usr/local/bin. If I give
sabcmd a xslt file and a xml file on the commandline, I am bombarded
with the html translation. All is good.
Now, time to tie it all together:
I first tried:
CC=gcc ./configure --with-mysql=/usr/local/mysql --with-apxs2
--enable-xslt --with-xslt-sablot
it compiled linked and installed ok, but caused Apache to no longer
startup due to linking errors in ld.so. I asked about those the other
day and go no response, so I am assuming nobody has any more ideas than
I do about that one.
Then I thought, well if sablotron works from the command line, it must
like the version of expat I am running, I bet PHP is linking with an
old version. Checked the output and sure enough, it is trying to link
with a version that it has in the distro. So, the next try was to tell
PHP to just use the newer one installed in /usr/local/lib. That should
solve the ld.so problem. Tried compile with:
CC=gcc ./configure --with-mysql=/usr/local/mysql --with-apxs2
--enable-xslt --with-xslt-sablot --with-expat-dir=/usr/local/lib
This version tells me that my version of expat is bad.
More specifically:
checking whether to enable XML support... yes
checking external libexpat install dir... yes
configure: error: not found. Please reinstall the expat distribution.
If I do a 'ls /usr/local/lib | grep expat' I get:
libexpat.a
libexpat.la
libexpat.so
libexpat.so.0
libexpat.so.0.1.0
I think I now have my problem. Sablotron is working fine against the
new expat, but PHP is not. Got a bit of a chicken and egg here. If I
uninstall Sablotron, I can not install XSLT support because the
required lib is missing. If I compile against the current codebase,
PHP chokes.
If you like, compile again and send you the full configure and make
output for either of my attempts.
Kevin Fries
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=17604&edit=1