今天需要写一个php多线程的程序,用了pcntl_fork();
但在运行的时候出现了错误:undifined function pcntl_fork();
说明php下还没有编译pcntl模块,在网上查了很多资料,最后终于编译成功,在这里总结一下:
首先,找到php的源码安装目录(linux下),然后进入/php-5.3.10/ext/pcntl。
执行命令:phpize
再执行命令:./configure --with-php-config=/home/work/local/php5/bin/php-config && make && make install (home/work/local/php5 是php的安装目录)
然后再查看php.ini中的extension_dir指向哪个目录:
然后把生成的pcntl.so拷贝到这个目录下,同时加上 extension=pcntl.so
这样就完成了编译,然后看下效果。
~/local/apache2/htdocs/xuxueliang]$ php forc.php
Deprecated: Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and greater in Unknown on line 0
iii parent.... iii iii iii iii iii iii