博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
树莓派配置swoole环境
阅读量:7039 次
发布时间:2019-06-28

本文共 3239 字,大约阅读时间需要 10 分钟。

打算开始学习swoole了(原来好像弄过: ),不过那次只是接触了一下,并未太过深入,这次重新来过 (°ー°〃)
swoole虽然能在windows上搭建,不过我觉得意义不大....需要安装CygWin这和在linux上有什么区别呢┑( ̄Д  ̄)┍,刚好现在手上有一台空闲的树莓派zero,试试在上面搭建

编译php

之所以要编译安装是因为在swoole编译的时候需要用到phpize,apt-get安装的时候没发现有

现在这个上面什么东西都没有,先安装php,我选最新的php7.2.6,zero配置是真的好低....解压和编译cpu都100%了很慢....趁这个时间去干点别的吧

下载,解压源码,安装依赖

强烈建议使用国内镜像....不然可能一些依赖lib按照失败,导致编译错误

sudo -iwget http://hk1.php.net/get/php-7.2.6.tar.gz/from/this/mirrormv mirro php.tar.gztar -zxvf php.tar.gzapt-get updateapt-get install libxml2* libbz2-dev libjpeg-dev libmcrypt-dev libssl-dev openssl libxslt1-dev libxslt1.1 libcurl4-gnutls-dev libpq-dev build-essential git make

编译配置,复制的网上的lnmp编译- -...去掉了和Nginx有关的编译项,我只需要编译出php就行,不需要Nginx那些环境,当然如果你之前已经有了这些,这一部分就可以跳过了

cd php-7.2.6 ./configure \--prefix=/usr/local/php \--exec-prefix=/usr/local/php \--bindir=/usr/local/php/bin \--sbindir=/usr/local/php/sbin \--includedir=/usr/local/php/include \--libdir=/usr/local/php/lib/php \--mandir=/usr/local/php/php/man \--with-config-file-path=/usr/local/php/etc \--with-mysql-sock=/var/lib/mysql/mysql.sock \--with-mcrypt=/usr/include \--with-mhash \--with-openssl \--with-mysql=shared,mysqlnd \--with-mysqli=shared,mysqlnd \--with-pdo-mysql=shared,mysqlnd \--with-gd \--with-iconv \--with-zlib \--enable-zip \--enable-inline-optimization \--disable-debug \--disable-rpath \--enable-shared \--enable-xml \--enable-bcmath \--enable-shmop \--enable-sysvsem \--enable-mbregex \--enable-mbstring \--enable-ftp \--enable-gd-native-ttf \--enable-pcntl \--enable-sockets \--with-xmlrpc \--enable-soap \--without-pear \--with-gettext \--enable-session \--with-curl \--with-freetype-dir \--enable-opcache \--enable-redis \--enable-fpm \--enable-fastcgi \--disable-fileinfo

图片描述

CPU 100% 有点怕,树莓派zero性能确实是弱...编译好慢....解决了编译配置的问题后就开始编译,我是真的睡了一觉(第二天)才起来make install

make && make install

设置一下php.ini文件

cp php.ini-production /usr/local/php/etc/php.ini//我输入php -v之后发现没反应,但是php确实是成功了,在/usr/local/php/bin里面./php -v也有反应,想到可能是没有链接到/usr/bin 目录里,用ln命令链接一下ln -s /usr/local/php/bin/php /usr/bin/php//链接phpizeln -s /usr/local/php/bin/phpize /usr/bin/phpize

成功之后,老套路

php -v

TIM%E6%88%AA%E5%9B%BE20180620085032.png

成功,终于可以下一步了,进入swoole编译配置

swoole编译

从git上下载源码,开始编译

wget https://github.com/swoole/swoole-src/archive/v4.0.0.zipunzip v4.0.0.zipmv swoole-src-4.0.0/ swoolecd swoolephpize

这里我提示了一个错误...

Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
解决办法:

apt-get install m4 autoconf

phpize成功之后继续运行编译配置和开始编译(但愿这次不用那么久了...)

开启一些需要的:

./configure --with-php-config=/usr/local/php/bin/php-config --enable-sockets --enable-swoole-debug --enable-openssl --enable-mysqlnd --enable-coroutinemake && make install

然后需要在php.ini中配置下

vi /usr/local/php/etc/php.ini//添加extension=swoole.so

然后php -m

TIM%E6%88%AA%E5%9B%BE20180620113804.png
有这一项就代表成啦~

测试

安装编译都完成之后,当然来试试是不是真的能用了

复制官方的例子,嘿嘿嘿~

on('open', function ($ws, $request) { var_dump($request->fd, $request->get, $request->server); $ws->push($request->fd, "hello, welcome\n");});//监听WebSocket消息事件$ws->on('message', function ($ws, $frame) { echo "Message: {$frame->data}\n"; $ws->push($frame->fd, "server: {$frame->data}");});//监听WebSocket连接关闭事件$ws->on('close', function ($ws, $fd) { echo "client-{$fd} is closed\n";});$ws->start();

php swoole.php

web:

成了~

TIM%E6%88%AA%E5%9B%BE20180620114807.png


历时一天,终于搞定了 编译真的是漫长的过程=_=

转载地址:http://kkfal.baihongyu.com/

你可能感兴趣的文章
JAVA多线程之线程的挂起与恢复(suspend方法与resume方法)
查看>>
Resource leak: 'context' is never closed
查看>>
Android EditText 获得输入焦点 以及requestfocus()失效的问题
查看>>
How To Add Swap on Ubuntu 14.04
查看>>
Fluent UDF【3】:环境配置
查看>>
总结近期CNN模型的发展(一)---- ResNet [1, 2] Wide ResNet [3] ResNeXt [4] DenseNet [5] DPNet ...
查看>>
基于netty-socketio的web推送服务
查看>>
机器学习算法复习--层次聚类
查看>>
Android开发_Android数据的四种存储方式
查看>>
MVC会员注册
查看>>
启动CLR
查看>>
SoapUI测试WS接口实战
查看>>
Undefined attribute name (placeholder)
查看>>
MySQL监控主要指标及采集方法
查看>>
趣味算法图解,文科生都看懂了
查看>>
6G+128G大存储手机价格再给惊喜,性价比之王非它莫属!
查看>>
官宣!比利时国脚登贝莱加盟广州富力 签约3年
查看>>
今晚《青春有你》上线啦!盘他!
查看>>
伯克利AI实验室出品:用GAN实现字体风格迁移
查看>>
Vue-cli 使用json server在本地模拟请求数据
查看>>