初识Swoole(安装)

2021-12-16  本文已影响0人  黄刚刚

参考文档:https://wiki.swoole.com/#/environment

安装准备

[root@localhost ~]# which gcc
/usr/bin/gcc
[root@localhost ~]# gcc -v
使用内建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
目标:x86_64-redhat-linux
配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
线程模型:posix
gcc 版本 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
[root@localhost ~]# which make
/usr/bin/make
[root@localhost ~]# which autoconf
/usr/bin/which: no autoconf in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/php/bin:/root/bin)
[root@localhost ~]# which phpize
/usr/local/php/bin/phpize

快速安装

[root@localhost opt]# ll
-rw-r--r--. 1 root root 7741 12月 17 09:34 swoole-v4.8.3.zip
[root@localhost opt]# unzip swoole-v4.8.3.zip 
-bash: unzip: 未找到命令
[root@localhost opt]# yum install unzip
[root@localhost opt]# unzip swoole-v4.8.3.zip 
[root@localhost opt]# rm -f swoole-v4.8.3.zip 
[root@localhost opt]# ll
总用量 4
drwxr-xr-x. 10 root root 4096 11月 30 11:00 swoole-v4.8.3
[root@localhost opt]#
[root@localhost opt]# cd swoole-v4.8.3/
[root@localhost swoole-v4.8.3]# phpize 
Configuring for:
PHP Api Version:         20210902
Zend Module Api No:      20210902
Zend Extension Api No:   420210902
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.

[root@localhost swoole-v4.8.3]# ./configure

# 这里报错了,尝试使用PECL安装

[root@localhost opt]# cd /usr/local/php/bin/
[root@localhost bin]# ll
总用量 110716
lrwxrwxrwx. 1 root root        9 12月 13 15:31 phar -> phar.phar
-rwxr-xr-x. 1 root root    15251 12月 13 15:31 phar.phar
-rwxr-xr-x. 1 root root 37668232 12月 13 15:31 php
-rwxr-xr-x. 1 root root 37557448 12月 13 15:31 php-cgi
-rwxr-xr-x. 1 root root     2757 12月 13 15:31 php-config
-rwxr-xr-x. 1 root root 38297056 12月 13 15:31 phpdbg
-rwxr-xr-x. 1 root root     4547 12月 13 15:31 phpize
[root@localhost bin]# wget http://pear.php.net/go-pear.phar
[root@localhost bin]# php go-pear.phar 
PHP Warning:  Private methods cannot be final as they are never overridden by other classes in /usr/local/php/bin/go-pear.phar on line 339

Warning: Private methods cannot be final as they are never overridden by other classes in /usr/local/php/bin/go-pear.phar on line 339

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : /usr/local/php
 2. Temporary directory for processing            : /tmp/pear/install
 3. Temporary directory for downloads             : /tmp/pear/install
 4. Binaries directory                            : /usr/local/php/bin
 5. PHP code directory ($php_dir)                 : /usr/local/php/share/pear
 6. Documentation directory                       : /usr/local/php/docs
 7. Data directory                                : /usr/local/php/data
 8. User-modifiable configuration files directory : /usr/local/php/cfg
 9. Public Web Files directory                    : /usr/local/php/www
10. System manual pages directory                 : /usr/local/php/man
11. Tests directory                               : /usr/local/php/tests
12. Name of configuration file                    : /usr/local/php/etc/pear.conf

1-12, 'all' or Enter to continue: 
Beginning install...
Configuration written to /usr/local/php/etc/pear.conf...
Initialized registry...
Preparing to install...
installing phar:///usr/local/php/bin/go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.4.14.tar...
installing phar:///usr/local/php/bin/go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.4.3.tar...
installing phar:///usr/local/php/bin/go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.10.13.tar...
installing phar:///usr/local/php/bin/go-pear.phar/PEAR/go-pear-tarballs/Structures_Graph-1.1.1.tar...
installing phar:///usr/local/php/bin/go-pear.phar/PEAR/go-pear-tarballs/XML_Util-1.4.5.tar...
warning: pear/PEAR dependency package "pear/Archive_Tar" downloaded version 1.4.14 is not the recommended version 1.4.4
install ok: channel://pear.php.net/Archive_Tar-1.4.14
install ok: channel://pear.php.net/Console_Getopt-1.4.3
install ok: channel://pear.php.net/Structures_Graph-1.1.1
install ok: channel://pear.php.net/XML_Util-1.4.5
install ok: channel://pear.php.net/PEAR-1.10.13
PEAR: Optional feature webinstaller available (PEAR's web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
PEAR: To install optional features use "pear install pear/PEAR#featurename"

******************************************************************************
WARNING!  The include_path defined in the currently used php.ini does not
contain the PEAR PHP directory you just specified:
</usr/local/php/share/pear>
If the specified directory is also not in the include_path used by
your scripts, you will have problems getting any PEAR packages working.


Would you like to alter php.ini </usr/local/php/lib/php.ini>? [Y/n] : y

php.ini </usr/local/php/lib/php.ini> include_path updated.

Current include path           : .:
Configured directory           : /usr/local/php/share/pear
Currently used php.ini (guess) : /usr/local/php/lib/php.ini
Press Enter to continue: 

The 'pear' command is now at your service at /usr/local/php/bin/pear

** The 'pear' command is not currently in your PATH, so you need to
** use '/usr/local/php/bin/pear' until you have added
** '/usr/local/php/bin' to your PATH environment variable.

Run it without parameters to see the available actions, try 'pear list'
to see what packages are installed, or 'pear help' for help.

For more information about PEAR, see:

  http://pear.php.net/faq.php
  http://pear.php.net/manual/

Thanks for using go-pear!

[root@localhost bin]# yum install autoconf
[root@localhost bin]# pecl install swoole
Build process completed successfully
Installing '/usr/local/php/lib/php/extensions/no-debug-non-zts-20210902/swoole.so'
Installing '/usr/local/php/include/php/ext/swoole/config.h'
Installing '/usr/local/php/include/php/ext/swoole/php_swoole.h'
install ok: channel://pecl.php.net/swoole-4.8.3
configuration option "php_ini" is not set to php.ini location
You should add "extension=swoole.so" to php.ini

[root@localhost bin]# 

# 到此,安装结束
[root@localhost bin]# php -m | grep 'swoole'
swoole
[root@localhost bin]# 


上一篇下一篇

猜你喜欢

热点阅读