Home > Article > Backend Development > Install PHP7.2.4 from CentOS source code and add swoole 2.1.1 extension
Installation environment
centos 7.4
php 7.2.4
swoole 2.1.1
In the next step, I will use JD Cloud host installed with centos7.4 system to demonstrate for everyone. ps: It is recommended that you use JD Cloud to practice installation. After all, newbies will get one month of free cloud host after registration
code The package is as follows
[root@JD ~]# pwd /root [root@JD ~]# ls mysoft work [root@JD ~]# cd mysoft/ [root@JD mysoft]# ls php-7.2.4.tar.bz2 swoole-swoole-v2.1.1.zip [root@JD mysoft]#
Source code installation php
● tar -jxvf php-7.2.4.tar.bz2 command to decompress php-7.2.4.tar.bz2 Directory
● cd php-7.2.4/ Enter the php-7.2.4.tar.bz2 directory
● mkdir /usr/local/src/php7.2.4 Create a new PHP installation directory
● ./configure --prefix=/usr/local/src/php7.2.4 Check the configuration
If the following error is reported because gcc is not installed, just use yum install gcc* to install it
checking for cc... no checking for gcc... no configure: error: in `/root/mysoft/php-7.2.4': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details
● If an error is reported: libxml2 not found rpm -qa |grep libxml2 Check whether the libxm package is installed
● If installed, directly yum install libxml2-devel
● If Without first yum install libxml2 and then yum install libxml2-devel
make && make install, the compilation time will be longer
Let's test creating a hello.php with the content of outputting hello world!
[root@JD ~]# vim hello.php [root@JD ~]# /usr/local/src/php7.2.4/bin/php hello.php hello world! [root@JD ~]#
Run successfully
Improve it if we use php hello.php directly, the system will report an error -bash: php: command not found
vim ~/.bash_profile Add php as follows Just use the alias
export PATH alias php=/usr/local/src/php7.2.4/bin/php
Don’t forget to source ~/.bash_profile again
Now you can directly use php hello.php to run the php code
Now you may feel that you PHP has been installed successfully, but you will find a fatal problem. You cannot find the php.ini file
[root@JD ~]# find / -name php.ini [root@JD ~]#
If you install the source code, we need to copy the php.ini file in the source code package to our installation directory
Where to copy? Then we can use the command php -i |grep php.ini
[root@JD php-7.2.4]# php -i |grep php.ini Configuration File (php.ini) Path => /usr/local/src/php7.2.4/lib
We can see that we need to copy to the lib directory
Use the command cp php.ini -development /usr/local/src/php7.2.4/lib/php.ini
Copy successful
At this point our php 7.2.4 has been completely installed successfully
Source code installation swoole
● unzip swoole-swoole-v2.1.1.zip Unzip swoole
● cd swoole/ Enter the swoole directory
● /usr/local/src/php7.2.4/bin/phpize Generate configure file
If an error is reported Cannot find autoconf. Use the command yum install autoconf to install it
● ./ configure --with-php-config=/usr/local/src/php7.2.4/bin/php-config
● make && make install to compile
After the compilation is completed, in php. Add extension=swoole.so
to the last line of ini● php -m |grep swoole to find whether swoole is installed successfully
[root@JD lib]# php -m |grep swoole swoole
swoole is installed successfully
Try to use swoole in combination with php
There are many swoole demos in the swoole source code package. For example, there is an echo.php in the swoole/examples/server directory;
echo. php opens the tcp service and listens to the 9501 port;
netstat -anp |grep 9501 We check that the 9501 port is not occupied now;
[root@JD lib]# netstat -anp |grep 9501 [root@JD lib]#
php echo.php Now we run echo.php;
Check again that port 9501 has been occupied by php;
[root@JD lib]# netstat -anp |grep 9501 tcp 0 0 0.0.0.0:9501 0.0.0.0:* LISTEN 27728/php
Now a simple service of our swoole has been opened by us.
You can happily use swoole for development in the future.
The above is the detailed content of Install PHP7.2.4 from CentOS source code and add swoole 2.1.1 extension. For more information, please follow other related articles on the PHP Chinese website!