`
兰迪RANDY
  • 浏览: 98372 次
文章分类
社区版块
存档分类
最新评论

fedora16下PHP5.4编译安装笔记

阅读更多
今天重装了下PHP,顺便尝鲜一下5.4,期间涉及到的多数软件我都是选择的最新稳定版。这里要注意的就是PHP的一个编译参数:--with-gd=shared ,这里切不可把shared替换为gd2的安装目录/usr/local/gd2,不然会无法编译通过,网上查了下好像是PHP5.3-5.4的一个bug。

yum install -y gcc g-c++ gcc-c++ libtool openssl-devel pam-devel python-devel libxml2-devel

sourcepath="/opt/source/"

cd {$sourcepath}
wget http://fossies.org/unix/misc/zlib-1.2.6.tar.gz
mkdir /usr/local/zlib
tar zxvf zlib-1.2.6.tar.gz
cd zlib-1.2.6
./configure --prefix=/usr/local/zlib
make && make install
echo "/usr/local/zlib/lib" >> /etc/ld.so.conf
ldconfig
chcon -t textrel_shlib_t /usr/local/zlib/lib/libz.so*

cd {$sourcepath}
wget http://xmlsoft.org/sources/libxml2-2.7.8.tar.gz
tar zxvf libxml2-2.7.8.tar.gz
cd libxml2-2.7.8
./configure --prefix=/usr/local/libxml2  --with-python
make
make install
LD_LIBRARY_PATH=/usr/local/lib
LD_LIBRARY_PATH=/usr/local/libxml2/lib
LD_LIBRARY_PATH=/usr/lib/python2.7/site-packages
echo "/usr/local/libxml2/lib" >> /etc/ld.so.conf
echo "/usr/lib/python2.7/site-packages" >> /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget http://xmlsoft.org/sources/libxslt-1.1.26.tar.gz
mkdir /usr/local/libxslt
tar zxvf libxslt-1.1.26.tar.gz
cd libxslt-1.1.26
./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2
make
make install
echo "/usr/local/libxslt/lib" >> /etc/ld.so.conf
echo "/usr/local/libxslt/lib/python2.7/site-packages" >> /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget http://vps.googlecode.com/files/libiconv-1.13.1.tar.gz
mkdir /usr/local/libiconv
tar zxvf libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
./configure --prefix=/usr/local/libiconv
make
make install
echo "/usr/local/libiconv/lib" >> /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget http://vps.googlecode.com/files/mhash-0.9.9.9.tar.gz
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9
./configure
make
make install
echo "/usr/local/lib" >> /etc/ld.so.conf
ln -s /usr/local/lib/libmhash.a        /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la       /usr/lib/libmhash.la
ln -s /usr/local/lib/libmhash.so       /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2     /usr/lib/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
ldconfig

cd {$sourcepath}
wget http://vps.googlecode.com/files/libmcrypt-2.5.8.tar.gz
mkdir /usr/local/libmcrypt
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/libltdl
./configure  --enable-ltdl-install
make
make install
echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig
cd {$sourcepath}
cd libmcrypt-2.5.8
./configure --prefix=/usr/local/libmcrypt
make && make install
ln -s /usr/local/libmcrypt/lib/libmcrypt.la         /usr/lib/libmcrypt.la
ln -s /usr/local/libmcrypt/lib/libmcrypt.so         /usr/lib/libmcrypt.so
ln -s /usr/local/libmcrypt/lib/libmcrypt.so.4       /usr/lib/libmcrypt.so.4
ln -s /usr/local/libmcrypt/lib/libmcrypt.so.4.4.8   /usr/lib/libmcrypt.so.4.4.8
cp /usr/local/libmcrypt/bin/libmcrypt-config /usr/bin/libmcrypt-config
cp /usr/local/libmcrypt/lib/libmcrypt.* /usr/lib
echo "/usr/local/libmcrypt/lib" >>  /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget http://vps.googlecode.com/files/mcrypt-2.6.8.tar.gz
mkdir /usr/local/mcrypt
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8
LD_LIBRARY_PATH=/usr/local/lib
./configure --prefix=/usr/local/mcrypt --with-libmcrypt-prefix=/usr/local/libmcrypt --with-libiconv-prefix=/usr/local/libiconv
make && make install

cd {$sourcepath}
wget http://curl.cs.pu.edu.tw/download/curl-7.25.0.tar.gz
tar zxvf curl-7.25.0.tar.gz
cd curl-7.25.0
./configure
make && make install
ldconfig

cd {$sourcepath}
wget http://download.savannah.gnu.org/releases/freetype/freetype-2.4.9.tar.gz
mkdir /usr/local/freetype2
tar zxvf freetype-2.4.9.tar.gz
cd freetype-2.4.9
./configure --prefix=/usr/local/freetype2
make && make install
echo "/usr/local/freetype2/lib"  >> /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget http://freedesktop.org/software/fontconfig/release/fontconfig-2.9.0.tar.gz
mkdir /usr/local/fontconfig
tar zxvf fontconfig-2.9.0.tar.gz
cd fontconfig-2.9.0
export PKG_CONFIG_PATH=/usr/local/libxml2/lib/pkgconfig:$PKG_CONFIG_PATH
cp -r /usr/local/libxml2/include/libxml2/libxml/ /usr/include/
./configure --prefix=/usr/local/fontconfig --with-freetype-config=/usr/local/freetype2/bin/freetype-config
make && make install
echo "/usr/local/fontconfig/lib" >> /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.5.9.tar.gz
mkdir /usr/local/libpng2
tar zxvf libpng-1.5.9.tar.gz
cd libpng-1.5.9/
export LDFLAGS=-L/usr/local/zlib/lib
export CFLAGS=-I/usr/local/zlib/include
./configure --prefix=/usr/local/libpng2
make && make install
echo "/usr/local/libpng2/lib" >> /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget http://www.ijg.org/files/jpegsrc.v8d.tar.gz
mkdir /usr/local/jpeg8
mkdir /usr/local/jpeg8/include
mkdir /usr/local/jpeg8/lib
mkdir /usr/local/jpeg8/bin
mkdir /usr/local/jpeg8/man/man1/ -p
tar zxvf jpegsrc.v8d.tar.gz
cd jpeg-8d
./configure --prefix=/usr/local/jpeg8 --enable-shared --enable-static
make && make install
echo "/usr/local/jpeg8/lib" >> /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget http://google-desktop-for-linux-mirror.googlecode.com/files/gd-2.0.35.tar.gz
mkdir /usr/local/gd2
tar zxvf gd-2.0.35.tar.gz
cd gd/2.0.35
cp /usr/local/libpng2/include/pngconf.h {$sourcepath}gd/2.0.35/
./configure --prefix=/usr/local/gd2 --with-zlib=/usr/local/zlib --with-jpeg=/usr/local/jpeg8 --with-freetype=/usr/local/freetype2 --with-xml=/usr/local/libxml2 --with-png=/usr/local/libpng2 --with-fontconfig=/usr/local/fontconfig --with-slt=/usr/local/libxslt
make && make install
echo "/usr/local/gd2/lib" >> /etc/ld.so.conf
ldconfig

cd {$sourcepath}
wget http://fossies.org/linux/misc/giflib-4.1.6.tar.gz
tar zxvf giflib-4.1.6.tar.gz
cd giflib-4.1.6
./configure
make && make install

cd {$sourcepath}
wget http://www.php.net/get/php-5.4.0.tar.gz/from/cn2.php.net/mirror
tar zxf php-5.4.0.tar.gz
cd php-5.4.0
./configure  --prefix=/usr/local/php --with-config-file-path=/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-gd=shared --with-jpeg-dir=/usr/local/jpeg8  --with-png-dir=/usr/local/libpng2 --enable-gd-native-ttf --with-zlib-dir=/usr/local/zlib --with-freetype-dir=/usr/local/freetype2 --enable-zip --with-libxml-dir=/usr/local/libxml2 --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-pgsql=/usr/local/pgsql --with-pdo-pgsql=/usr/local/pgsql --with-curl --with-mcrypt=/usr/local/libmcrypt --enable-mbstring=all --with-mhash --enable-soap --enable-sockets --with-pear --enable-gd-native-ttf --enable-ftp --disable-ipv6 --with-iconv
make
make test
make install


修改/usr/local/apache2/conf/httpd.conf

    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
下面添加
    PHPIniDir "/etc"
    AddType application/x-httpd-php .php

重启apache,搞定!
0
0
分享到:
评论

相关推荐

    安装 Fedora 16 详细图文(虚拟机安装)

    虚拟机安装则允许用户在不改变现有操作系统的情况下,安全地运行Fedora 16。 首先,在VirtualBox中创建一个新的虚拟机,指定足够的内存和磁盘空间。一旦虚拟机设置完毕,选择"开始"以启动安装过程。进入安装界面后...

    Fedora16安装及Qt交叉编译环境搭建总结

    本文将详细解析在Windows 7系统下安装Fedora16以及构建Qt交叉编译环境的过程。 首先,Fedora16的安装涉及到在Win7环境下进行。借助Acronis Disk Director Suite磁盘管理工具,我们需要创建一个FAT32分区存放Fedora...

    fedora14中安装arm-linux-gcc交叉编译器.pdf

    本文详细介绍了在 Fedora 14 环境下安装 arm-linux-gcc 交叉编译器的步骤,包括下载和解压 arm-linux-gcc 工具包、配置环境变量和验证安装结果。该文档旨在帮助开发者快速安装和使用 arm-linux-gcc 交叉编译器,提高...

    基于fedora.Linux内核编译报告

    在Fedora Linux环境下进行内核编译,我们可以学到许多关于Linux系统和内核编译的知识点。 首先,编译Linux内核是一个多步骤的过程,主要包括以下几个步骤:下载解压Linux内核源码、安装软件依赖包、清除编译过程中...

    基于fedora9的linux驱动程序hello模块编译笔记.doc

    本篇文档详细介绍了如何在Fedora 9环境下编译一个简单的“Hello World”内核模块。以下是整个过程的关键知识点: 1. **Kernel Development Kit (kernel-devel)**:在编译内核模块之前,确保已安装`kernel-devel`包...

    Fedora内核编译的实现

    ### Fedora内核编译的实现 #### 实验背景与目的 本文旨在介绍如何在Fedora 10系统中实现内核的编译过程。通过这一实验,我们可以深入了解Linux内核的工作原理及其定制方法,这对于系统管理员及开发人员来说至关...

    Fedora 9下VMWareTools安装步骤

    本文将详细阐述在Fedora 9环境下安装及配置VMWare Tools的全过程,旨在帮助用户顺利实现这一目标。 #### 第一步:安装内核开发包(kernel-devel) 在Fedora系统上安装VMWare Tools前,首要任务是确保已安装内核...

    fedora一些安装说明fedora一些安装说明

    下载后,将ISO文件刻录到DVD或制作成USB启动盘,以便在BIOS或UEFI模式下引导安装。 2. **创建安装媒体** 可以使用Rufus、Etcher等工具将ISO文件写入USB驱动器,或者用 Brasero、K3b等刻录软件将ISO刻录到DVD。 3....

    【原创】Fedora16 安装wxpython

    【标题】"【原创】Fedora16 安装wxpython" 在Fedora 16操作系统中安装wxPython,这是一个用于构建图形用户界面(GUI)的应用程序开发工具包,它结合了Python编程语言与wxWidgets库。wxWidgets是跨平台的,支持多种...

    fedora16_i386下jthread+jrtplib交叉编译

    标题中的“fedora16_i386下jthread+jrtplib交叉编译”涉及到的是在Fedora 16 i386操作系统环境下,对两个特定的开源库——JThread和JRTPLIB进行编译和交叉编译的过程。这里的关键点是“交叉编译”,意味着目标平台...

    十步搞定 win7安装fedora 16

    在Windows 7上安装Fedora 16是一个相对复杂的过程,因为这涉及到双系统或多系统的配置。以下是一步步教你如何完成这个任务的详细步骤: **第一步:准备工作** 确保你的电脑满足Fedora 16的最低硬件要求。通常,你...

    fedora11 下一些软件的安装使用说明

    fedora11 下一些软件的安装使用说明 mysql+php+apache 建立discuz论坛 不关闭selinux

    Fedora下Qt环境搭建[参考].pdf

    Fedora 下 Qt 环境搭建 一、Fedora 操作系统介绍 ...Fedora 下 Qt 环境搭建需要安装交叉编译环境、Qt for PC(X11)、qvfb 和 QT for Embedded for X86。需要编译和安装 Qt,并配置环境变量,以便使用 Qt 环境。

    fedora下emacs的安装

    本文详细介绍了在 Fedora 6 操作系统下安装 Emacs 22.0.50 的过程,包括从选择合适版本、下载安装包、解压配置到最终解决问题并成功安装的整个流程。虽然 Fedora 6 已经不再被广泛使用,但对于其他版本的 Fedora ...

    fedora16 DVD 32位和64位下载种子

    这个标题提到的"fedora16 DVD 32位和64位下载种子"意味着我们可以在这个资源中找到Fedora 16的两个版本:一个是为32位(i386)处理器设计的,另一个是为64位(x86_64)处理器设计的。Fedora项目通常会发布这两个版本...

    fedora 下能用的dnw2(不用编译,直接使用)

    标题和描述中提到的关键点是“在Fedora下能用”和“不用编译,直接使用”,这暗示DNW2提供了预编译的二进制版本,用户可以直接安装和运行,而无需经历编译源代码的过程。 在Linux系统中,特别是对于开发者和高级...

    fedora 8 硬盘安装及系统安装设置.

    ### Fedora 8 硬盘安装及系统安装设置详解 #### 一、Fedora 8 硬盘安装概述 Fedora 8是一款基于Linux的操作系统,由Fedora Project社区维护,该版本发布于2007年。通过硬盘安装Fedora 8,可以方便地在现有操作系统...

    win8.1安装fedora20

    在Windows 8.1系统上安装Fedora 20是一项常见的双系统配置任务,对于热衷于尝试不同操作系统的用户来说非常有用。以下是详细的步骤和注意事项,以帮助你成功安装Fedora 20。 首先,你需要访问Fedora官方网站下载...

    Centos5.4开发环境安装

    在本文中,我们将深入探讨如何在CentOS 5.4操作系统上设置开发环境,特别是关注cpp和gcc编译器以及基础调试工具包的安装。CentOS 5.4是一款基于Linux的开源操作系统,广泛用于服务器和开发环境,因为它提供了稳定且...

    fedora17安装教程

    【Fedora 17 安装教程】 Fedora 17 是一款基于 Linux 内核的操作系统,由 Fedora 项目开发并维护,以其开源、创新和先进技术著称。本教程将指导你如何在虚拟机中安装 Fedora 17,特别适合于想要在学习 PHP 或者其他...

Global site tag (gtag.js) - Google Analytics