028-86261949

当前位置:首页 > 技术交流 > Cygwin安装swoole时configure error C preprocessor解决方案

Cygwin安装swoole时configure error C preprocessor解决方案

2019/07/25 14:48 分类: 技术交流 浏览:4

 
swoole是一个非常牛逼的国产PHP框架,但是只能在Linux环境中运行,大多数的程序员在开发时都是windows系统,装虚拟机又比较麻烦,这时Cygwin出现了。Cygwin可以使我们在windows环境中拥有一个类似linux的命令行环境。
 
使用Cygwin安装swoole时需要安装支持的扩展,网上有非常多相关介绍,但只有一个版本,照着装安装完成后Cygwin是可以安装成功的,但是在安装swoole时会提示没有C++解释器,报错信息:
 
checking how to run the C++ preprocessor... /lib/cpp
configure: error: in `/home/swoole-src-master':
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details
 
这个坑是有提示的,还是比较好解决,就是在选择扩展时再搜索“C++”,选择安装C++解释器即可。要注意的是,需要删除重新安装Cygwin软件,不能只重新下载扩展,那样依然会报错。
 
完整的安装步骤如下(亲测通过):
 
前提:下载Cygwin工具和swoole源码
Cygwin 官方地址:http://www.cygwin.com/
swoole 官方下载地址:https://github.com/swoole/swoole-src/releases
 

一、安装Cygwin

使用网络安装,需要下载包时自动从网络上下载
 
设置安装根目录,建议不要把目录装得太深
 
设置扩展包的安装目录
 
设置网络,默认即可
 
选择一个下载包的网站,建议选择前几个,速度会快很多。
 
开始下载并安装,速度就看上一步选择的站点了。如果非常慢,就取消重新来一次,换个速度快的站点。
 
选择要安装的扩展包,一共需要找六个
 
扩展包1: gcc: gcc-core
 
扩展包2: php:php 、 php-devel
 
扩展包3: pcre-devel:libpcre-devel
 
扩展包4: autoconf
 
扩展包5: c++:gcc-objc++ 、 libc++devel 、 libc++1
扩展名6: json: php_json
 
预览并确认要安装的包
 
下载并安装扩展名(可以出去走一圈了,需要10分钟左右)
 
安装完成,创建桌面和开始菜单快捷方式
 
双击桌面快捷方式 Cygwin64 Terminal 打开类似linux的命令行,可以执行常见的linux命令
 
二、安装swoole
将swoole官方网站上下载的源码解压出来
 
将解压出来的swoole源码复制到Cygwin安装目录中 /home/swoole-src-master
 
切换到 /home/swoole-src-master 目录中准备开始安装
 
执行 phpize 命令,生成编译的配置文件configure,这一步要注意关闭杀毒软件(会误报)
 
执行 ./configure && make && make install 进行配置并打包,最后安装
 
安装成功!!!
 
 
手动打开 /etc/php.ini ,添加扩展 extension=swoole.so
 
再执行 php -m 命令即可查看php支持的模块,能看到swoole就算是成功了。
 
总结,在Cygwin里面安装swoole时,报 configure: error: C++ preprocessor "/lib/cpp" fails sanity check 错误是因为未安装C++解释器造成的,只需要删除重新安装时选择C++解释器即可。
#标签:Cygwin安装,swoole,configure error C preprocessor解决方案