webp的php扩展编写

[*] 生成框架
[url]http://blog.youkuaiyun.com/heiyeshuwu/article/details/3453854[/url] 文章比较详细,不细说
[*] 代码编写
libweb([URL]https://developers.google.com/speed/webp/[/URL])中example部分提供了cwebp的源码,只是输入输出为文件句柄,尝试修改输入输出参数为内存即可。
不细说
[*] 编译
依赖环境:
[list]
[*] libwebp-0.2.0+
[*] libjpeg-8+
[*] libpng
[/list]
下面说下编译过程中遇到的几个疑问:
1. 如何在编译时引用第三方库及头文件?
答:[url]http://www.59n.net/60978.html[/url]
编译安装依赖Makefile文件,该文件由configure文件生成,configure又继承自config.m4文件。故需要修改config.m4文件

/*
vi config.m4
在config.m4中添加
*/
PHP_ADD_INCLUDE(/usr/local/include)
PHP_ADD_LIBRARY_WITH_PATH(jpeg, /usr/local/lib, WEBP_SHARED_LIBADD)
PHP_ADD_LIBRARY_WITH_PATH(png, /usr/local/lib, WEBP_SHARED_LIBADD)
PHP_ADD_LIBRARY_WITH_PATH(webp, /usr/local/lib, WEBP_SHARED_LIBADD)
PHP_SUBST(WEBP_SHARED_LIBADD)

2. 依赖多个.c文件,如何设置?
答:仍需修改config.m4文件
[code]
PHP_NEW_EXTENSION(webp, webp.c cwebp.c, $ext_shared)//多个.c文件以空格分隔
[/code]
3. 需要条件编译,如何设置?
答:修改config.m4文件
[code]
export CPPFLAGS="$CPPFLAGS -DWEBP_HAVE_JPEG -DWEBP_HAVE_PNG"
[/code]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值