ID: 9036
Comment by: brett at brettbrewer dot com
Reported By: d dot drury at ucl dot ac dot uk
Status: Bogus
Bug Type: *General Issues
Operating System: RedHat Linux
PHP Version: 4.0.4pl1
New Comment:
I'm having the exact same problem installing php from the 3.4.8 source.
I'm running apache2 from the latest stable install with DSO enabled.
I've tried it with and without doing "make" first. I've followed the
install instructions to the letter and I can't make it output the .so
file no matter what I do. I know my apache install is okay because I'm
able to load my old PHP .so file and run scripts under php4.3.3. Here
is my configure line:
./configure -with-apxs2=/usr/local/apache2/bin/apxs --with-mysql
--with-gd --with-curl --with-iconv --with-zlib --with-openssl
--enable-shared
I run that, followed by: make clean;make;make install
No new .so files are created on my system anywhwere and I get no
compile errors either. It looks like it should be working, but no .so
is output. WHY WHY WHY WHY WHY!? I've probably done close to 200 google
searches over the past 2 days looking for an answer with no luck.
Previous Comments:
------------------------------------------------------------------------
[2003-03-13 02:07:26] [EMAIL PROTECTED]
Yes, of course using --with-apxs makes a difference. Without that
option you will never get a libphp4.so, you simply get a php binary.
Please read the installation instructions.
------------------------------------------------------------------------
[2003-03-13 02:04:56] alex at cif dot rochester dot edu
I just tried installing php 4.3.1 from source on Slackware 8, and i
couldn't figure out why the process wasn't producing a libphp4.so
file...
Google brought up this page, and indeed, using
./configure; make install
works just fine, while
./configure;make;make install doesn't
In the latter case, the output of make install is missing the lines
[activating module `php4' in /usr/local/etc/httpd/httpd.conf]
cp libs/libphp4.so /usr/local/libexec/libphp4.so
chmod 755 /usr/local/libexec/libphp4.so
cp /usr/local/etc/httpd/httpd.conf /usr/local/etc/httpd/httpd.conf.bak
cp /usr/local/etc/httpd/httpd.conf.new /usr/local/etc/httpd/httpd.conf
rm /usr/local/etc/httpd/httpd.conf.new
after it says
Installing PHP SAPI module
I'm not sure whether the option --with-apxs makes a difference, as i
didn't use it.
------------------------------------------------------------------------
[2001-02-02 05:19:05] d dot drury at ucl dot ac dot uk
That is funny, as when I did it with make it didn't work, but when I
did it without (as the INSTALL file I have DOES say!) IT WORKED!
------------------------------------------------------------------------
[2001-02-01 20:51:09] [EMAIL PROTECTED]
You did something silly as there is nothing wrong with the
INSTALL file's instructions..
The correct way to do it (Assuming you have apache with DSO support):
# ./configure --with-apxs=/usr/local/apache/bin/apxs
--with-mysql=/path/
# make clean ; make ; make install
# /usr/local/apache/bin/apachectl stop
# /usr/local/apache/bin/apachectl start
( the 'make clean' part isn't needed when compiling from fresh sources
which
have just been gunzipped/untarred)
If you still have problems with the installing of PHP then ask further
questions
on [EMAIL PROTECTED] mailing list.
--Jani
------------------------------------------------------------------------
[2001-02-01 07:26:02] d dot drury at ucl dot ac dot uk
Have tracked down the problem myself.
If you type make before make install the installation doesn't work!
I think this could be made more explicit in the INSTALL file.
In the INSTALL file, section 4a is repeated. The first occurrence has
somehow had part of 3b added onto it. It reads:
---------------------------------------------------------
4a. Setting up the server. (Dynamic Module)
The make install command in step 3 should have done most of your
work for you. It actually edits your httpd.conf file and tries to
enable the dynamic PHP module. To verify this, look for a line
that
looks like this:
LoadModule php4_module libexec/libphp4.so
The actual path before the libphp4.so part might differ slightly.
This
is likely fine. If you are paranoid you can examine the output from
the
make install step to see where the libphp4.so file was actually put
and
type: make
Assuming it compiles without errors, proceed to step 4b.
--------------------------------------------------------
The correct text for 4a then continues. The incorrect text above
suggests typing make, which messes the install up.
------------------------------------------------------------------------
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/9036
--
Edit this bug report at http://bugs.php.net/?id=9036&edit=1