?
Solved

How to compile and install PHP 5.2.6 on Xserve running Mac OS X Server 10.5.3

Posted on 2008-06-11
11
Medium Priority
?
2,331 Views
Last Modified: 2013-12-13
I need to update the version of PHP that is running on our xserver.  I am told that 5.2.6 must be installed to meet a requirement for PCI compliance.  Apple has 5.2.4 listed on their site as a download but not 5.2.6.  I have downloaded 5.2.6 from php.net and now do not know how to install.  Do I need to download anything else and how do I compile and install?
0
Comment
Question by:tammyf
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
11 Comments
 
LVL 48

Expert Comment

by:hernst42
ID: 21770416
If there is no special need for 5.2.6 (application used tdoes not work because of a bug in php) stick with 5.2.4.
To compile you need a lot of additional development libraries and if you are not realy familiar with compiling programs it will take you days to get your installation to work as you expect it.
0
 
LVL 7

Expert Comment

by:kanlue
ID: 21770474
if you like, you can try the following steps:
---------
sudo mv /usr/local/php5 ~/Desktop/php5.old
curl -O http://us3.php.net/distributions/php-5.2.6.tar.gz 
tar -xzf php-5.2.6.tar.gz
sudo mv php5 /usr/local/
sudo ln -sf /usr/local/php5/entropy-php.conf /etc/apache2/other/+entropy-php.conf
sudo apachectl restart
----------

and you can find more info here:
http://www.entropy.ch/software/macosx/php/

hope it helps.
0
 

Author Comment

by:tammyf
ID: 21770986
We can't stick with 5.2.4 because it does not meet PCI compliance requirements.  We are being forced to upgrade so we can keep accepting credit cards.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 1

Expert Comment

by:m-tron
ID: 21831090
In terminal type (apachectl -V) and post the output
0
 

Author Comment

by:tammyf
ID: 21832261
Here is the output from apachectl -V attached.
picture-server.png
0
 
LVL 1

Expert Comment

by:m-tron
ID: 21832554
Install xcode if not already Installed.

Find the header files for your version of MySQL.
This example assumes they are located @ /usr/local/mysql/
You can find your version by typing mysql -V in the terminal.

open terminal and enter the following...

su

cp /usr/libexec/apache2/libphp5.so /usr/libexec/apache2/libphp5.so.old

mkdir /source

cd /source

curl -O http://www.ijg.org/files/jpegsrc.v6b.tar.gz

tar -xvf jpegsrc.v6b.tar.gz

curl -o "php-5.2.6.tar.bz2" -L http://us2.php.net/get/php-5.2.6.tar.bz2/from/us.php.net/mirror

tar -xvjf php-5.2.6.tar.bz2

cd /source/jpeg-6b

cp /usr/share/libtool/config.sub .

cp /usr/share/libtool/config.guess .

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os  -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os  -pipe" CXXFLAGS="-arch x86_64 -g -Os  -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --enable-shared

make

mkdir -p /usr/local/include

mkdir -p /usr/local/bin

mkdir -p /usr/local/lib

mkdir -p /usr/local/man/man1

make install

cd /source/php-5.2.6/ext/gd

phpize

cd ../..

MACOSX_DEPLOYMENT_TARGET=10.5 \
CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" \
CCFLAGS="-arch x86_64 -g -Os -pipe" \
CXXFLAGS="-arch x86_64 -g -Os -pipe" \
LDFLAGS="-arch x86_64 -bind_at_load" \
./configure --prefix=/usr \
  --mandir=/usr/share/man \
  --infodir=/usr/share/info \
  --sysconfdir=/etc \
  --with-zlib \
  --with-zlib-dir=/usr/ \
  --with-jpeg-dir=/usr/local/lib \
  --with-png-dir=/usr/X11R6 \
  --with-freetype-dir=/usr/X11R6 \
  --with-xpm-dir=/usr/X11R6 \
  --with-openssl \
  --with-curl \
  --enable-exif \
  --enable-ftp \
  --enable-mbstring \
  --enable-mbregex \
  --enable-sockets \
  --with-mysql=/usr/local/mysql \
  --with-mysqli=/usr/local/mysql/bin/mysql_config \
  --with-apxs2=/usr/sbin/apxs \
  --without-iconv

make

make install

cp /etc/php.ini.default /usr/lib/php.ini
__________________
edit /usr/lib/php.ini
add -> extension=gd.so
disable -> extension_dir = "./"
save and exit
___________________
edit /etc/apache2/httpd.conf
search for libphp5.so
make sure it is enabled
if you can't find it add the line -> LoadModule php5_module        libexec/apache2/libphp5.so
save and exit
___________________
apachectl -k graceful

Load a file with phpinfo(); and see if it worked.

This worked for me on a fresh install of Leopard Server updated to 10.5.3
0
 

Author Comment

by:tammyf
ID: 21832598
Thanks for all of that however I don't know how to load a file with phpinfo().  However I am willing to try the commands above and then just reinstall the operating system if something goes wrong.
0
 
LVL 1

Expert Comment

by:m-tron
ID: 21832621
forgot to mention to install the X11 SDK also included in the xcode dmg file
0
 
LVL 1

Accepted Solution

by:
m-tron earned 2000 total points
ID: 21832649
There should be a file called info.php in the directory /Library/WebServer/Documents
open it with textedit and remove the // before phpinfo(); and save.
in your browser navigate to http://localhost/info.php
you should get a page telling you information about php.

Hope this helps.
0
 

Author Comment

by:tammyf
ID: 21832667
I will try it this weekend when I can take the server down without causing an uproar.  I will post my results.  Thanks!
0
 

Author Closing Comment

by:tammyf
ID: 31466433
This was a thorough explanation.  Apple came out with the update so I did not have to use it however.
0

Featured Post

10 Questions to Ask when Buying Backup Software

Choosing the right backup solution for your organization can be a daunting task. To make the selection process easier, ask solution providers these 10 key questions.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Today, still in the boom of Apple, PC's and products, nearly 50% of the computer users use Windows as graphical operating systems. If you are among those users who love windows, but are grappling to keep the system's hard drive optimized, then you s…
Originally, this post was published on Monitis Blog, you can check it here . In business circles, we sometimes hear that today is the “age of the customer.” And so it is. Thanks to the enormous advances over the past few years in consumer techno…
The viewer will learn how to dynamically set the form action using jQuery.
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.
Suggested Courses

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question