2011年6月13日星期一

PHP5.3.6编译GD库

昨天重新编译了下gd库,之前的不支持jpeg,在ecshop中出现了问题。过程曲折。
在这简单说下方法吧。
mic的服务器是DEBIAN6 LNMP环境 使用php-fpm及fast-cgi
首先从各官网上下载以下文件:zlib,libpng,freetype,jpeg,libxml2,gd。当然也可以从其他站点下载,但是本着安全且最新的原则,mic是从官网下载的。
~~~~~~~~~~~~~~~~~~~~这部分内容来自http://www.netren.org/index.php/apache2/145-ubuntu-php5gd.htmlhttp://beafroot.blog.163.com/blog/static/1231345332009928105954506/相应的具体参数可能因为版本问题有所不同。mic增加了–prefix参数,这个根据自己需要可以调整~~~~~~~~~~~~
1.安装zlib
tar -zxvf zlib-1.2.5.tar.gz
cd zlib-1.2.5
./configure --prefix="/usr/local/zlib"
make
make install
2.安装libpng
tar -zxvf libpng-1.4.4.tar.gz
cd libpng-1.4.4
./configure --prefix="/usr/local/png"
make
make install
3.安装freetype
tar zxvf freetype-2.1.10.tar.gz
cd freetype-2.1.10
./configure --prefix="/usr/local/freetype"
make
make install
4.安装Jpeg
tar -zxvf jpegsrc.v8b.tar.gz
cd jpeg-8b/
./configure --enable-shared --enable-shared --enable-static --prefix="/usr/local/jpeg"
make
make test
make install
注意,这里configure一定要带–enable-shared参数,不然,不会生成共享库
5:安装 libxml2
tar -zxvf libxml2-2.6.31.tar.gz
cd libxml2-2.6.31
./configure --prefix="/usr/local/libxml"
make
make install
6.安装GD
tar -zxvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure –prefix="/usr/local/gd" –with-jpeg="/usr/local/jpeg" –with-freetype="/usr/local/freetype" –with-png="/usr/local/png" –with-zlib="/usr/local/zlib"
make
make install
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7.编译php
tar -zxvf php-5.3.6.tar.gz
cd /php-5.3.6
./configure  --prefix="/usr/local/php"  --with-mysql="/usr/local/mysql"  --with-gd --with-ttf  --with-openssl  --enable-mbstring  --enable-fastcgi --with-bz2 --with-zlib --enable-memcache --with-mcrypt --enable-fpm --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-gd-native-ttf --with-fpm-user=www-data --with-fpm-group=www-data
make
make install
到此就已经编译完了。
接下来说下过程中我遇到的问题。
1.编译php时使用–with-gd=”/usr/local/gd”出现gd build test失败的问题
首先要声明一点,就是–with-gd之后一定要加上地址,如果只是–with-gd,那就是用bundled的gd库,也就是php自带的。
如果加上了之后,出现失败的问题,mic的是出现很多个test都是no。mic一开始用php5.3.5编译的,后来换成了5.3.6,同时把所有要安装的gd库软件又都安装了,然后就可以编译了,因此这一点并不是很明确。有了解的哪位麻烦跟mic说下,谢了。
2.编译php时出现gd.h gd.c报错,比如declared及undefined reference等。由于鬼使神差,mic把gd.h复制到了/usr/local/gd/,出现这个问题,删除后就木有问题了。
mic遇到的问题应该就是这两个。。给新手看的。。

没有评论:

发表评论

上海松善实业有限公司

    上海松善实业有限公司是一家集多品牌销售于一体的电线电缆骨干企业,公司成立于2016年。 公司拥有国内各大品牌:起帆、远东、上上、江南、胜华等。     主要产品有:高低压电力电缆、橡套电缆、控制电缆、架空绝缘电缆、塑胶电缆、电子计算机电缆、通讯电缆、...