文档章节

php扩展开发-清除编译缓存

布几岛
 布几岛
发布于 2013/10/15 18:20
字数 287
阅读 1509
收藏 18

今天在linux下开发php扩展,发现修改源代码重新编译安装后,.so文件还是原来的,并没有更新。最后清理了所有编译后产生的文件,重新编译安装才更新了.so文件。估计是编译后产生了缓存,为了方便清理,可以在ext_skel文件后面加入下面代码。

$ECHO_N " remake$ECHO_C"
cat >remake <<eof
#!/bin/sh
keepfiles="php_${extname}.h ${extname}.c ${extname}.php config.m4 config.w32 CREDITS EXPERIMENTAL remake"
allfiles=\$(ls .)
for f in \$allfiles
do
        echo "\$keepfiles" | grep -q "\$f"
        if [ \$? -ne 0 ]
        then
                rm -rf \$f
        fi
done

#phpize路径
/usr/local/webserver/php/bin/phpize

#php-config路径
./configure --with-php-config=/usr/local/webserver/php/bin/php-config

#编译
make

eof
chmod 755 ./remake


测试运行

在扩展目录里新生成了remake文件,remake源码如下:

#!/bin/sh
keepfiles="php_abc.h abc.c abc.php config.m4 config.w32 CREDITS EXPERIMENTAL remake"
allfiles=$(ls .)
for f in $allfiles
do
        echo "$keepfiles" | grep -q "$f"
        if [ $? -ne 0 ]
        then
                rm -rf $f
        fi
done
/www/wdlinux/nginx_php-5.3.17/bin/phpize
./configure --with-php-config=/www/wdlinux/nginx_php-5.3.17/bin/php-config
make

以后重新编译扩展的时候用 ./remake 替代make命令编译即可。


如果您要转载此文章请注明出处:http://my.oschina.net/u/554660/blog/169006

© 著作权归作者所有

共有 人打赏支持
布几岛
粉丝 6
博文 37
码字总数 10513
作品 0
海淀
高级程序员
Smarty中文手册,Smarty教程,Smarty模板的入门教材

Smarty中文手册,Smarty教程,Smarty模板的入门教材 Smarty - the compiling PHP template engine 点这里收藏此教程 本教材网址: http://www.hbcms.com/main/smarty/ Copyright © by ispi of......

晨曦之光
2012/03/09
426
0
nginx重新编译添加ngx_cache_purge扩展

参考资料: nginx官网ngxcachepurge扩展参考:http://wiki.nginx.org/CachePurgeChs 张宴的技术博文:http://zyan.cc/nginx_cache/ 查看nginx编译参数: 下载ngxcachepurge,然后解压 返回n...

技术小阿哥
2017/11/26
0
0
ThinkPHP 2.0 版本正式发布

在经过5个月的重构和完善之后,ThinkPHP终 于发布了新的里程碑版本2.0,作为新版网站上线和祖国60周年华诞的献礼,我们送给大家这样一份惊喜。感谢为了新版的功能辛苦测试和完善的朋友们,感...

红薯
2009/10/16
1K
1
iOS项目版本更新打包提交APP中断的解决方法(Cannot proceed with delivery: an existing transporter instance is currently uploading this package)

iOS项目版本更新打包提交APP中断的解决方法(Cannot proceed with delivery: an existing transporter instance is currently uploading this package) 我们首先来了解一下开发工具Xcode的一...

长风留言
2017/12/17
0
0
Smarty前端模板引擎 - 我看过的PHP开源框架

Smarty Smarty可以说是我接触PHP这门语言用到的第一个开源框架,当时在Smarty的帮助下,很好地完成了项目的开发,也很好地遵循了MVC的模式。但是到了后来,慢慢地发现,很多人都很熟悉Smart...

暗夜在火星
2014/12/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring IOC 之 注册 BeanDefinition

获取 Document 对象后,会根据该对象和 Resource 资源对象调用 registerBeanDefinitions() 方法,开始注册 BeanDefinitions 首先调用 createBeanDefinitionDocumentReader() 方法实例化 Bean...

职业搬砖20年
18分钟前
1
0
Pycahrm左边出现一些bookmark的取消方法

pycharm 左边出一个对号或则一个0,放上去提示Bookmark 取消方法:按F11

鹏灬
20分钟前
0
0
JDK1.8使用Dubbo时需注意

Dubbo自带的很多包都比较旧了,其中的javassist在JDK1.8上运行会报错 而且错误通常比较诡异,javassist是编辑和创建Java字节码的类库,常见的错误会从spring中报出 解决办法: <dependency>...

火龙战士
23分钟前
1
0
Java 对Oracle数据库中的 BLOB类型 插入图片

package test;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.PrintStream;import java.sql.Connection;import java.sql.DriverManager;......

青峰Jun19er
25分钟前
0
0
awk复习

10月22日任务 复习 awk调用外部变量 -v参数设置内部变量调用外部变量 [root@test awk]# a=44[root@test awk]# echo "ABCD" | awk -v GET_A=$a '{print GET_A}'44 更复杂的应用: [root@...

robertt15
32分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部