linux下PHP手动添加扩展库-创新互联

1.进入php源程序目录中的ext目录中,这里存放着各个扩展模块的源代码,选择你需要的模块,比如curl模块:

创新互联主要从事成都网站设计、做网站、成都外贸网站建设公司、网页设计、企业做网站、公司建网站等业务。立足成都服务洞口,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

cd curl

执行phpize生成编译文件,phpize在PHP安装目录的bin目录下

/usr/local/php/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/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

linux下PHP手动添加扩展库


make


linux下PHP手动添加扩展库


make install


linux下PHP手动添加扩展库


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

2.修改配置

在php.ini里,设置扩展目录:

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20131226"

并添加扩展模块引用:

extension = curl.so

3.检查并重启Apache

/usr/local/php/bin/php -v

执行这个命令时,php会去检查配置文件是否正确,如果有配置错误,这里会报错,可以根据错误信息去排查

补充:

1.需要安装自己手动编译的扩展包时在ext目录中如下指定

以下为在/ext/gd文件下安装gd库是顺便使其支持freetype

./configure --with-freetype-dir=/usr/local/freetype --with-php-config=/usr/local/php/bin/php-config

2.在安装pdo_mysql扩展时

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make后出现如下错误:

linux下PHP手动添加扩展库

意思是在php_pdo_mysql_int.h的第27行包含文件时没有找到他他所需的mysqlnd.h 但实际上在ext/mysqlnd中能找到mysqlnd.h因此大致是他的包含路径有问题 ,编辑php_pdo_mysql_int.h 定位到27行改成如下(改成能直接访问到相应头文件的路径)

linux下PHP手动添加扩展库

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:linux下PHP手动添加扩展库-创新互联
链接URL:http://scyanting.com/article/poceo.html