php学习终归还是要学习底层的,但是我c相关的早就忘光了,求助如何编译官方php7,http://php.net/downloads.php#...
php学习终归还是要学习底层的,但是我c相关的早就忘光了,求助如何编译官方php7,http://php.net/downloads.php#...
这个在网上搜Linux编译PHP
都会有很多结果吧,./configure --help就能得到一个参数列表。
PHP测试版出来的时候我编译过好几次了,有些扩展,比如curl,gd,iconv,json,mbstring,mysqlnd,pdo这些是必装的,不然很多程序会出问题。
学习了,编译过程中 make test && make install 过不去。
出现错误
> /usr/local/pkgsrc/lang/php56/work/php-5.6.12/ext/fileinfo/libmagic/apprentice.c
> -o ext/fileinfo/libmagic/apprentice.lo
> gcc: Internal error: Killed (program cc1 received signal 9)
> Please submit a full bug report.
> See for instructions.
> Makefile:491: recipe for target 'ext/fileinfo/libmagic/apprentice.lo' failed
> gmake: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1
> *** Error code 2
最后查了下,才发现是内存不够了,百度ubuntu 加swap ,解决问题。
2 回答3k 阅读✓ 已解决
1 回答2.1k 阅读✓ 已解决
2 回答1.6k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
2 回答1.2k 阅读
1 回答1.3k 阅读✓ 已解决
3 回答1.6k 阅读
闲着无聊,刚刚编译了下,我写一下过程。
如果下面的./configure爆出缺什么的错误,就在上面命令中加一条 lib<缺的东西名字>-dev(el)
然后我们开始编译,注意编译机器的内存必须要大,我虚拟机最开始1G还不够,调到了4G
然后安装
把php7装到上面prefix指定目录,也就是/opt/php-7.0.9/下
跑下cli看看版本号与信息:
运行php-fpm服务前,需要把相关的配置文件放好:
修改fpm监听的端口:
然后启动服务 sudo /opt/php-7.0.9/sbin/php-fpm
最后在nginx配置里用
就可以了。