php扩展开发-清除编译缓存
php扩展开发-清除编译缓存
布几岛 发表于4年前
php扩展开发-清除编译缓存
  • 发表于 4年前
  • 阅读 1432
  • 收藏 18
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

今天在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

标签: php扩展
共有 人打赏支持
粉丝 6
博文 36
码字总数 10017
×
布几岛
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: