linux下源码安装php,Linux下源码安装PHP和Swoole

Linux下源码安装PHP和Swoole

羡仙. • 2019 年 06 月 23 日

PHP 安装

安装依赖yum -y install gcc openssl* libxml2-devel bzip2

PHP源码下载

解压tar -xjvf php-7.3.3.tar.bz2

设置全局cd php-7.3.3

# 配置PHP路径

./configure --prefix=/usr/local/php

# 构建

make

# 安装

make install

# 设置PHP全局

vim /root/.bash_profile

# 添加如下

alias ll='ls -al'

alias cls=clear

alias php=/usr/local/php/bin/php

# 保存并退出,令配置生效

source /root/.bash_profile

# 查看PHP是否生效

php -v

# 返回以下说明成功

PHP 7.3.3 (cli) (built: Jun 22 2019 01:35:56) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.3.3, Copyright (c) 1998-2018 Zend Technologies

配置文件

我们编译好的php目录下是没有php.ini文件的.而我们一开始解压好的php目录下面是有配置文件的.所以我们现在需要把解压好的目录下面的php.ini放到我们安装 的php目录下cd /data/softpackage/php-7.3.3

ll | grep php.ini

# 我们需要php.ini-production

-rw-r--r--. 1 qvbilam qvbilam 70877 3月 5 08:50 php.ini-development

-rw-r--r--. 1 qvbilam qvbilam 71149 3月 5 08:50 php.ini-production

# 复制配置文件到安装目录

cp php.ini-development /usr/local/php/etc/php.ini

我们一开源码安装只设定了php的路径,没有设置配置文件的路径.查看一下配置文件的路径.php -i | grep php.ini

# 返回路径,明显不再etc下

Configuration File (php.ini) Path => /usr/local/php/lib

# 移动配置文件

mv /usr/local/php/etc/php.ini /usr/local/php/lib

Swoole 安装

下载# 安装git

yum install -y git

# 下载

cd /data/softpackage/

git clone https://github.com/swoole/swoole-src.git

安装# 进入目录

cd swoole-src

# 拓展模块,生成confgure文件

/usr/local/php/bin/phpize

# 返回出现错误

Configuring for:

PHP Api Version: 20180731

Zend Module Api No: 20180731

Zend Extension Api No: 320180731

Cannot find autoconf. Please check your autoconf installation and the

$PHP_AUTOCONF environment variable. Then, rerun this script.

# 解决方法

# 下载autoconf

wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.68.tar.gz

tar xzf autoconf-2.68.tar.gz

cd autoconf-2.68

./configure

make && make install

# 下载m4

cd /data/softpackage/

wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz

tar -zvxf m4-1.4.9.tar.gz

cd m4-1.4.9/

./configure && make && make install

# 配置swoole

cd ../swoole-src/

./configure --with-php-config=/usr/local/php/bin/php-config

# 可以看到部分的错误信息

checking for g++... no

checking for c++... no

checking for gpp... no

checking for aCC... no

checking for CC... no

checking for cxx... no

checking for cc++... no

checking how to run the C++ preprocessor... /lib/cpp

configure: error: in `/data/softpackage/swoole-src':

configure: error: C++ preprocessor "/lib/cpp" fails sanity check

See `config.log' for more details

# 还是因为缺少依赖包,安装他们

yum install -y glibc-headers gcc-c++

# again

cd ../swoole-src

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make && make install

# 返回

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/

Installing header files: /usr/local/php/include/php/

# 查看拓展

cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/

ll

# 有swoole了哦~

总用量 18400

drwxr-xr-x. 2 root root 58 6月 22 13:38 .

drwxr-xr-x. 3 root root 39 6月 22 01:39 ..

-rwxr-xr-x. 1 root root 4212370 6月 22 01:39 opcache.a

-rwxr-xr-x. 1 root root 2277744 6月 22 01:39 opcache.so

-rwxr-xr-x. 1 root root 12341360 6月 22 13:38 swoole.so

# 编辑配置文件

find / -name 'php.ini' # 查找配置文件

vim /usr/local/php/lib/php.ini

# 添加

extension=swoole

# 保存,退出.

php -m | grep swoole

# 成功的话会返回swoole.

验证# 首先现在个net工具

yum install -y net-tools

# 回到swoole解压目录

cd /data/softpackage/swoole-src/

# 启动测试文件

php examples/server/echo.php

# 不用等返回结果啦~令开一个端口输入

netstat -anp | grep 9501

# 如果下面返回的有结果,说明安装成功

tcp 0 0 0.0.0.0:9501 0.0.0.0:* LISTEN 44070/php

OJBK.睡觉,接下来要更新Swoole咯哦~

096ec1025f09488b3a89d00569de2518.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值