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