Linux下独立添加PHP扩展模块

本文详细介绍如何通过动态加载方式安装和配置PHP的GD库,包括下载和安装freetype、libpng、jpeg等依赖库,以及GD库本身的过程。同时,提供了在不同Linux发行版上解决autoconf缺失问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我就通过动态加载php的gd库为例子

下载freetype-2.3.5.tar.gz

下载地址:http://download.savannah.gnu.org/releases/freetype/

安装 freetype

tar -zxvf freetype-2.2.1.tar.gz

cd freetype-2.2.1

./configure --prefix=/usr/local/freetype2

make

make install

(3).下载libpng-1.2.20.tar.gz

下载地址:http://www.libpng.org/download/

安装:libpng

tar zxvf libpng-1.2.20.tar.gz

cd libpng-1.2.20/

./configure --prefix=/usr/local/libpng

make

make install

(4).下载jpegsrc.v6b.tar.gz

下载地址:ftp://ftp.uu.net/graphics/jpeg

安装:jpeg6

建立目录

mkdir /usr/local/jpeg6

mkdir /usr/local/jpeg6/bin

mkdir /usr/local/jpeg6/lib

mkdir /usr/local/jpeg6/include

mkdir /usr/local/jpeg6/man

mkdir /usr/local/jpeg6/man/man1

tar -zxvf jpegsrc.v6b.tar.gz

cd jpeg-6b

./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static

make

make install

注意:这里./configure一定要带--enable-shared参数,不然,不会生成共享库

下载:gd-2.0.35.tar.gz

下载地址:http://www.libgd.org/Downloads

安装 gd

tar -zxvf gd-2.0.35.tar.gz

cd gd-2.0.35

./configure --prefix=/usr/local/gd --with-png-dir=/usr/local/lib --with-freetype-dir=/usr/local/freetype2 --with-jpeg-dir=/usr/local/jpeg6

make && make install

 

然后到php的安装目录下的ext中找到gd库,如果没有就到php官网下载

cd gd

/usr/local/php5/bin/phpize

运行时,可能会报错:Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable is set correctly and then rerun this script.“,需要安装autoconf:

    yum install autoconf(RedHat或者CentOS)、apt-get install autoconf(Ubuntu Linux)

    生成配置文件,并编译生成模块:

    /usr/local/php5/bin/phpize

    ./configure --with-curl=/usr/local/gd --with-php-config=/usr/local/php5/bin/php-config

     make

    make install

    这样,gd.so就被复制到PHP对应目录(如:/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/)

    3.修改配置在php.ini里,设置扩展目录:

    extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/"

    并添加扩展模块引用:

/usr/local/etc/php/extensions.ini

    extension = gd.so

 

For documentation, browse index.html. Quick install guide: If the sources have been fetched from CVS, run bootstrap.sh [options]. From a released source, use: 1. Type './configure' 2. Type 'make install' Generic configuration instructions are in the file INSTALL. The following 3rd-party libraries will be used by gd if found by configure. While gd will compile and install even without these, we suggest that at least zlib and libpng are installed, and recommend that freetype and jpeg are installed as well: 1. zlib, available from http://www.gzip.org/zlib/ Data compression library 2. libpng, available from http://www.libpng.org/pub/png/ Portable Network Graphics library; requires zlib 3. FreeType 2.x, available from http://www.freetype.org/ Free, high-quality, and portable font engine 4. JPEG library, available from http://www.ijg.org/ Portable JPEG compression/decompression library 5. XPM, available from http://koala.ilog.fr/lehors/xpm.html X Pixmap library If any of these libraries are installed, but not detected by configure, you can use the following command line options: --with-png=DIR Without the DIR argument, configure will check for png header files and libraries in a default location. To switch off png support, use --without-png, or --with-png=no. If the DIR argument is specified, configure tries to find the png header files in DIR/include, and the libraries in DIR/lib. To accommodate OpenBSD ports, DIR/include/libpng is also checked if necessary. --with-freetype=DIR Dto. for freetype 2.x library. The search path for include files is DIR/include/freetype2. --with-jpeg=DIR Dto. for jpeg library. --with-xpm=DIR Dto. for xpm library.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值