https://segmentfault.com/a/1190000016080151
第一步:下载
[root@ShuaiJhou ~]# wget https://www.php.net/distributions/php-7.3.6.tar.gz
[root@ShuaiJhou ~]# ll
total 19000
-rw-------. 1 root root 1771 May 10 21:33 anaconda-ks.cfg
-rw-r--r-- 1 root root 19449322 May 28 17:30 php-7.3.6.tar.gz
下载地址
第一步
第二步:编译安装
[root@ShuaiJhou ~]# tar zxvf php-7.3.6.tar.gz
[root@ShuaiJhou ~]# cd php-7.3.6
[root@ShuaiJhou php-7.3.6]# ll
[root@ShuaiJhou php-7.3.6]# yum -y install gcc gcc-c++ autocnf libxml2 libxml2-devel
[root@ShuaiJhou php-7.3.6]#./configure --prefix=/usr/local/php
[root@ShuaiJhou php-7.3.6]# make -j 4
[root@ShuaiJhou php-7.3.6]# echo $?
[root@ShuaiJhou php-7.3.6]# make install
[root@ShuaiJhou php-7.3.6]# echo $?
[root@ShuaiJhou php]# cd /usr/local/php/
[root@ShuaiJhou php]# ./bin/php -v
PHP 7.3.6 (cli) (built: Jun 24 2019 10:27:24) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies
[root@ShuaiJhou php]#
第三步:为php命令建立软链接,加入到环境变量中
[root@ShuaiJhou ~]# ln -s /usr/local/php/bin/php /usr/local/bin/php
[root@ShuaiJhou ~]# php -v
PHP 7.3.6 (cli) (built: Jun 24 2019 10:27:24) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies
第四步:创建配置文件,并将其复制到正确的位置
[root@ShuaiJhou ~]# php -ini
phpinfo()
PHP Version => 7.3.6
System => Linux ShuaiJhou 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64
Build Date => Jun 24 2019 10:26:57
Configure Command => './configure' '--prefix=/usr/local/php'
将php.ini复制到 Configuration File (php.ini) Path
[root@ShuaiJhou ~]# php -i | grep php.ini
Configuration File (php.ini) Path => /usr/local/php/lib
[root@ShuaiJhou ~]#
[root@ShuaiJhou php-7.3.6]# cd /root/php-7.3.6
[root@ShuaiJhou php-7.3.6]# cp php.ini-development /usr/local/php/lib/php.ini
[root@ShuaiJhou php-7.3.6]# php -i | grep php.ini
Configuration File (php.ini) Path => /usr/local/php/lib
Loaded Configuration File => /usr/local/php/lib/php.ini
[root@ShuaiJhou php-7.3.6]#
第五步:swoole下载
[root@ShuaiJhou ~]# wget https://github.com/swoole/swoole-src/archive/v4.3.5.tar.gz
[root@ShuaiJhou ~]# ll
total 20292
-rw-------. 1 root root 1771 May 10 21:33 anaconda-ks.cfg
drwxr-xr-x 17 zhoushuai zhoushuai 4096 Jun 24 19:14 php-7.3.6
-rw-r--r-- 1 root root 19449322 May 28 17:30 php-7.3.6.tar.gz
drwxrwxr-x 9 root root 4096 Jun 14 16:21 swoole-src-4.3.5
-rw-r--r-- 1 root root 1312699 Jun 24 19:22 v4.3.5.tar.gz
[root@ShuaiJhou ~]# cd swoole-src-4.3.5/
[root@ShuaiJhou swoole-src-4.3.5]# ls
clear.sh LICENSE swoole_async_coro.cc swoole_coroutine.h swoole_http_v2_server.cc swoole_redis_server.cc swoole_trace.c
CMakeLists.txt make.sh swoole_atomic.c swoole_coroutine_util.cc swoole_lock.c swoole_runtime.cc swoole_websocket_server.cc
code_stats.sh mascot.png swoole_buffer.c swoole_event.c swoole_mysql_coro.cc swoole_serialize.c tests
config.m4 package.xml swoole.cc swoole_http_client_coro.cc swoole_mysql_coro.h swoole_serialize.h thirdparty
config.w32 php_swoole_cxx.h swoole_channel_coro.cc swoole_http_client.h swoole_postgresql_coro.cc swoole_server.cc tools
CREDITS php_swoole.h swoole_client.cc swoole_http.h swoole_postgresql_coro.h swoole_server_port.cc travis
examples README-CN.md swoole_client_coro.cc swoole_http_server.cc swoole_process.cc swoole_socket_coro.cc
gdbinit README.md swoole_config.h swoole_http_v2_client_coro.cc swoole_process_pool.cc swoole_table.c
include src swoole_coroutine.cc swoole_http_v2_client.h swoole_redis_coro.cc swoole_timer.cc
[root@ShuaiJhou swoole-src-4.3.5]#
第六步:swoole安装
[root@ShuaiJhou swoole]# yum install -y autoconf
[root@ShuaiJhou swoole]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20180731
Zend Module Api No: 20180731
Zend Extension Api No: 320180731
[root@ShuaiJhou swoole]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@ShuaiJhou swoole]# echo $?
[root@ShuaiJhou swoole]# make
[root@ShuaiJhou swoole]# echo $?
[root@ShuaiJhou swoole]# make install
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/
Installing header files: /usr/local/php/include/php/
[root@ShuaiJhou swoole]#
[root@ShuaiJhou swoole]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/
opcache.a opcache.so swoole.so
[root@ShuaiJhou swoole]#
第六步:swoole PHP配置
[root@ShuaiJhou server]# vim /usr/local/php/lib/php.ini
extension=swoole
[root@ShuaiJhou server]# php -m | grep swoole
swoole
[root@ShuaiJhou server]#
[root@ShuaiJhou server]# php echo.php
[root@ShuaiJhou ~]# netstat -antup | grep 9501
tcp 0 0 0.0.0.0:9501 0.0.0.0:* LISTEN 103983/php
[root@ShuaiJhou ~]#
网友评论