ubuntu上安装php7.0的pcntl(多进程模块)扩展

ubuntu16,php7.0:安装多进程模块pcntl

1、首先检查php版本号

php -v
//输出版本号:我的是php7.0.33

2、下载对应版本的php包

//我的是进入到/home下,创建php目录,把包下载到php目录中去
cd /home/php/

//然后下载对应的php包
wget http://cn2.php.net/distributions/php-7.0.33.tar.bz2

3、解压缩包

// -C 的作用是解压到指定目录,这里解压到当前目录下
tar xvjf php-7.2.8.tar.bz2 -C .

4、进入到php的ext/pcntl下

cd /home/php/php-7.0.33/ext/pcntl/

5、执行的phpize命令(phpize命令是用来扩展php模块的)

phpize

发现这一步报错了,报错如下:

root@ubuntu-virtual-machine:/home/php/php-7.0.33/ext/pcntl/# phpize
程序“phpize”尚未安装。 您可以使用以下命令安装:
apt install php7.0-dev

提示没有安装phpize,那就按照他给的提示,使用命令:apt install php7.0-dev命令进行安装:

root@ubuntu-virtual-machine:/home/php/php-7.0.33/ext/pcntl/# apt install php7.0-dev
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列软件包是自动安装的并且现在不需要了:
  libboost-program-options1.58.0 libboost-thread1.58.0 libgoogle-perftools4 libsnappy1v5 libtcmalloc-minimal4 libv8-3.14.5
  libyaml-cpp0.5v5 linux-headers-4.15.0-29 linux-headers-4.15.0-29-generic linux-headers-4.15.0-43
  linux-headers-4.15.0-43-generic linux-image-4.15.0-29-generic linux-image-4.15.0-43-generic linux-modules-4.15.0-29-generic
  linux-modules-4.15.0-43-generic linux-modules-extra-4.15.0-29-generic linux-modules-extra-4.15.0-43-generic mongodb-clients
  mongodb-server
使用'sudo apt autoremove'来卸载它(它们)。
将会同时安装下列软件:
  autoconf automake autotools-dev debhelper dh-php dh-strip-nondeterminism libfile-stripnondeterminism-perl libltdl-dev
  libmail-sendmail-perl libpcre3-dev libpcre32-3 libsigsegv2 libssl-dev libssl-doc libsys-hostname-long-perl libtool m4
  php-pear php-xml php7.0-xml pkg-php-tools po-debconf shtool
建议安装:
  autoconf-archive gnu-standards autoconf-doc dh-make libtool-doc gfortran | fortran95-compiler gcj-jdk libmail-box-perl
下列【新】软件包将被安装:
  autoconf automake autotools-dev debhelper dh-php dh-strip-nondeterminism libfile-stripnondeterminism-perl libltdl-dev
  libmail-sendmail-perl libpcre3-dev libpcre32-3 libsigsegv2 libssl-dev libssl-doc libsys-hostname-long-perl libtool m4
  php-pear php-xml php7.0-dev php7.0-xml pkg-php-tools po-debconf shtool
升级了 0 个软件包,新安装了 24 个软件包,要卸载 0 个软件包,有 123 个软件包未被升级。
需要下载 6,485 kB 的归档。
解压缩后会消耗 28.2 MB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 libsigsegv2 amd64 2.10-4 [14.1 kB]
获取:2 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 m4 amd64 1.4.17-5 [195 kB]
获取:3 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 autoconf all 2.69-9 [321 kB]
获取:4 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 autotools-dev all 20150820.1 [39.8 kB]
获取:5 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 automake all 1:1.15-4ubuntu1 [510 kB]
获取:6 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 po-debconf all 1.0.19 [234 kB]
获取:7 http://cn.ar
.....
..
.
后面的就省略了。。。。。

6、上面执行成功后就是执行phpize命令了

root@ubuntu-virtual-machine:/home/php/php-7.0.33/ext/pcntl# phpize
Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012

7、执行配置命令

root@ubuntu-virtual-machine:/home/php/php-7.0.33/ext/pcntl# ./configure --with-php-config=/usr/bin/php-config

8、执行安装和编译命令

root@ubuntu-virtual-machine:/home/php/php-7.0.33/ext/pcntl# make && make install
//执行完了该条命令后,最后会输出结果:
//Installing shared extensions:     /usr/lib/php/20151012/
表示安装完成

9、给php添加扩展:extension=pcntl.so,进入到php下的fpm文件中,编辑php.ini

root@ubuntu-virtual-machine:/etc/php/7.0/fpm# vim php.ini 

修改的结果如下:

10、重启php7.0-fpm服务

service php7.0-fpm restart

重启后打印phpinfo();可以看到扩展了

ok,结束!

猜你喜欢

转载自blog.csdn.net/shj_php/article/details/89191024