Compile and install the php-5.4.29 PHP installation depends on the Mysql environment, before installation, you need to check whether mysql is installed
I. environment
System: CentOS 6.4x64 minimal installation
IP: 192.168.3.54
II. Installation
Check the system environment before installation
[root@rsync-3 ~]# netstat -anpt |egrep '3306|80'tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 1609/mysqld tcp 0 0 :::80 :::* LISTEN 1739/httpd [root@rsync-3 ~]# /usr/local/apache/bin/apachectl -vServer version: Apache/2.4.12 (Unix)Server built: May 5 2015 15:44:15[root@rsync-3 ~]# mysql -u root -plyao36843 -h 127.0.0.1 -e 'select version();'+------------+| version() |+------------+| 5.5.37-log |+------------+
Install the basic library files required by PHP
yum install -y zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel libxslt-devel
Install libiconv in source code
[root@rsync-3 ~]# wget [root@rsync-3 ~]# tar xf libiconv-1.14.tar.gz [root@rsync-3 ~]# cd libiconv-1.14[root@rsync-3 libiconv-1.14]# ./configure --prefix=/usr/local/libiconv [root@rsync-3 libiconv-1.14]# make && make install
Install PHP
[Root @ rsync-3 ~] # Tar xf php-5.4.29.tar.gz [root @ rsync-3 ~] # Cd php-5.4.29 [root @ rsync-3] #. /configure \> -- prefix =/usr/local/php-5.4.39 \> -- with-apxs =/usr/local/apache/bin/apxs \> -- with-mysql =/usr/ local/mysql \> -- with-xmlrpc \> -- with-openssl \> -- with-zlib \> -- with-freetype-dir \> -- with-gd \> --- jpeg-dir \> -- with-png-dir \> -- with-iconv =/usr/local/libiconv \> -- enable-short-tags \> -- enable-sockets \> -- enable-zend-multibyte \ # this parameter has been deprecated> -- enable-soap \> -- enable-mbstring \> -- enable-static \> -- enable-gd-native-ttf \> -- with-curl \> -- with-xsl \> -- enable-ftp \> -- with-libxml-dir # Start to compile the file configure: WARNING: unrecognized options: -- enable-zend-multibytechecking for grep that handles long lines and-e... /bin/grepchecking for egrep... /bin/grep-Echecking for a sed that does not truncate output... /bin/sedchecking build system type... x86_64-unknown-linux-gnuchecking host system type... x86_64-unknown-linux-gnuchecking target system type... the x86_64-unknown-linux-gnuchecking for cc... ccchecking whether the C compiler works... yeschecking for C compiler default output file name... a. outchecking for suffix of executables... checking whether we are cross compiling... nochecking for suffix of object files... ochecking whether we are using the gnu c compiler... yeschecking whether cc accepts-g... yeschecking for cc option to accept ISO c89... none neededchecking how to run the C preprocessor... cc-Echecking for icc... nochecking for suncc... nochecking whether cc understands-c and-o together... yeschecking how to run the C preprocessor... cc-Echecking for ansi c header files... yeschecking for sys/types. h... yeschecking for sys/stat. h... yeschecking for stdlib. h... yeschecking for string. h... yeschecking for memory. h... yeschecking for strings. h... yeschecking for inttypes. h... yeschecking for stdint. h... yeschecking for unistd. h... yeschecking minix/config. h usability... nochecking minix/config. h presence... nochecking for minix/config. h... nochecking whether it is safe to define _ EXTENSIONS __... yeschecking whether ln-s works... yeschecking for system library directory... libchecking whether to enable runpaths... yeschecking if compiler supports-R... nochecking if compiler supports-Wl,-rpath ,... yeschecking for gawk... gawkchecking for bison... nochecking for byacc... nochecking for bison version... invalidconfigure: WARNING: bison versions supported for regeneration of the Zend/PHP parsers: 1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3 2.4.1 2.4.2 2.4.3 2.4 2.5.1 2.5 2.6.1 2.6.2 2.6.4 (found: none ). checking for re2c... noconfigure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers. checking whether to enable computed goto gcc extension with re2c... nochecking whether to force non-PIC code in shared modules... nochecking whether/dev/urandom exists... yeschecking for pthreads_cflags... -pthreadchecking for pthreads_lib... grouping SAPI moduleschecking for AOLserver support... nochecking for Apache 1.x module support via DSO through APXS... configure: error: You have enabled Apache 1.3 support while your server is Apache 2. please use the appropriate switch -- with-apxs2 # Here we are prompted to use -- with-apxs2 parameters # modify parameters to recompile [root @ rsync-3 php-5.4.29] #. /configure \> -- prefix =/usr/local/php-5.4.39 \> -- with-apxs2 =/usr/local/apache/bin/apxs \ # here follow the prompts to use -- with-apxs2> --- mysql =/usr/local/mysql \> -- with-xmlrpc \> -- with-openssl \> -- with-zlib \> -- with-freetype-dir \> -- with-gd \> -- with-jpeg-dir \> -- with-png-dir \> -- with-iconv =/usr/local/libiconv \> -- enable-short-tags \> -- enable-sockets \> -- enable-zend-multibyte \ # this parameter has been deprecated, delete and re-compile> -- enable-soap \> -- enable-mbstring \> -- enable-static \> -- enable-gd-native-ttf \> -- with-curl \> -- with-xsl \> -- enable-ftp \> -- with-libxml-dir [root @ rsync-3 php-5.4.29] # make & make install [root @ rsync-3 php-5.4.29] # ln-s/ usr/local/php-5.4.39/usr/local/php [root @ rsync-3 php-5.4.29] # cp php. ini-production/usr/local/php/lib/php. ini