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

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


测试运行

php扩展开发-清除编译缓存_第1张图片

在扩展目录里新生成了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扩展)