CentOS7 编译安装 php7

LNM都齐了,就差p了

先下载php源码包,最好是到官网 php.net,下载后备用。安装众多依赖

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel

作者:An Sao
链接:https://www.zhihu.com/question/50615606/answer/145699091
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

别的还好,就是遇到了 libmcrypt 和 libmcrypt-devel 的问题。一通百度发现还挺麻烦,似乎是几个比较独立的组件,使用下载+手动安装的方式先解决掉它们。下载的 tar.gz 包解压缩到 Downloads 文件夹,依次执行以下命令

sudo ./configure
sudo make
sudo make install

安装后执行 whereis 查看一下装在了哪里

下载并安装 mhash,套路依旧是

sudo tar -zxv -f mhash-0.9.9.9.tar.gz
sudo ./configure
sudo make
sudo make install

安装 mcrypt,这次套路有了不同

sudo LD_LIBRARY_PATH=/usr/local/lib ./configure
sudo make
sudo make install

运行 ./configure 时就遇到了问题

看描述似乎是找不到它需要的 libmcrypt,百度一通找到一篇《Linux下解决php扩展模块mcrypt的问题》的博文,里边前辈已经描述比较详细,但到我这儿还是不成功依旧是该错误,头疼。。。但疼痛一会儿耐着性子研究一下提示,并查看了 libmcrypt-config 文件中的内容,发现一些蹊跷。首先根据前辈提示,指定路径很重要,目标放在路径还是写的不正确上,libmcrypt-config文件中显示的 prefix 是 /usr/local,而我之前通过 whereis 查看的都是 /usr/local/lib,大着胆子把命令修改成这样

sudo LD_LIBRARY_PATH=/usr/local:/usr/local/lib ./configure --witrypt-prefix=/usr/local

/usr/local 是告诉命令 libmcrypt 的路径,/usr/local/lib 是告诉命令 mhash 的路径,运行后居然过去了

先认为成功了吧,按照博文只是,下一步是生成 mcrypt.so 扩展包,需要进入 php 解压目录去操作。所以先完成 php 的安装再回来做它。用老套路安装 php

cd php-7.1.9
sudo ./configure [options]
sudo makesudo make install

php的编译和安装还是费一些时间的,信息量巨大此处省略截图,碰到了一些错误信息

看提示,似乎 build ok 但安装 error,检讨一下刚才不应该 sudo make && make install,拆成一个个执行。结果再次执行 sudo make 时就提示

那我就执行一下 make test 看看是什么 ...... 一堆似乎无穷的信息喷薄滚动而出,我后悔了,百度了一下,似乎是手贱了,php 的自动化测试,我运行的有点儿太早了。赶快 ctrl+c 运行最后的 sudo make install

安装还是很快的,php 基本安装结束!

一些经验:

  • 先安装 libmcrypt 和 mhash,两者之间没有依赖关系,但 mcrypt 依赖二者

一些链接:

  • 参考来自知乎的文章:https://www.zhihu.com/question/50615606/answer/145699091
  • 参考《搭建阿里云lnmp环境》:http://www.cnblogs.com/feng18/p/6491386.html
  • 参考《CentOS下php安装mcrypt扩展》:http://blog.csdn.net/zy112289/article/details/52840062
  • libmcrypt在:http://mcrypt.hellug.gr/lib/(版本老)
  • libmcrypt-2.5.8:http://vdisk.weibo.com/s/cWruOGX-d97N2
  • mhash:http://mhash.sourceforge.net/
  • 参考《Linux下解决php扩展模块mcrypt的问题》:http://blog.csdn.net/alexdream/article/details/7408577
时间: 2024-10-27 19:26:21

CentOS7 编译安装 php7的相关文章

CentOS7编译安装php7.1

1.首先安装依赖包: yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxs

centos7 编译安装 php7.4

1. 下载安装编译工具 yum groupinstall 'Development Tools' 2.安装依赖包 yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcry

centos7编译安装PHP7已经把你逼到去安定医院看门诊的地步?请看此文

本文援引自https://www.cnblogs.com/lamp01/p/10101659.html,亲测可行,特此鸣谢 地球上总有一群人是如此深爱PHP,但无奈的是编译安装的过程化特性,导致各种bitch依赖陆续跳出来要求被安装,在configure和make过程中各种花式搅局不说,各种火星错误原因提示更是叫人欲哭无泪,更火大的是,你花了一礼拜搞定之后,突然良心发现想安装nginx支持组件php-fpm,只见一行隽绣的小字写着 “请在configure时--enable-fpm”,顿时就有按

Centos7 编译安装PHP7.2

yum install wget 在 /usr/local/src 目录下载php源码包 wget http://cn2.php.net/distributions/php-7.2.4.tar.gz 解压源码包tar zxvf php-7.2.1.tar.gz 安装编译php需要的依赖包:yum install gcc autoconf gcc-c++yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel

centos7编译安装PHP7.2(与Nginx搭配的安装方式)

一.下载源码包 二.安装php依赖组件 yum -y install wget vim pcre pcre-devel openssl openssl-devel libicu-devel gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-

centos7编译安装的php7怎么卸载 解决cenos 编译安装软件后怎么卸载问题

之前有个疑问  编译安装的软件 不是yum 安装 怎么卸载 遇到个问题, centos7编译安装的php7怎么卸载 解决: 关于卸载如果没有配置--prefix选项,源码包也没有提供make uninstall,则可以通过以下方式可以完整卸载: 一个临时目录重新安装一遍,如: ./configure --prefix=/tmp/to_remove && make install1然后遍历/tmp/to_remove的文件,删除对应安装位置的文件即可(因为/tmp/to_remove里的目录

Linux Centos7.2 编译安装PHP7.0.2

操作环境: 1.系统:Centos7.2 2.服务:Nginx 1.下载PHP7.0.2的安装包解压,编译,安装: $ cd /usr/src/ $ wget http://cn2.php.net/distributions/php-7.0.2.tar.gz $ tar -zxvf php-7.0.2.tar.gz $ cd php-7.0.2 1.1 编译前检查 请检查是否安装了gcc ,没有的话执行yum install gcc 检查是否安装了libxml2 ,没有的话执行yum insta

CentOS7编译安装httpd-2.4.41 php7.3

CentOS7编译安装httpd-2.4.41 php7.3 安装参考环境: CentOS Linux release 7.5.1804 (Core) 一.安装依赖包 httpd安装的依赖包 # yum -y install pcre-devel # yum -y install openssl-devel # yum -y groupinstall "Development Tools" arp-util安装的依赖包 # yum install expat-devel 二.编译安装a

Centos7 离线安装 php7

问题:因内部管控,机器无法连接公有yum源安装php. 正常安装php7可以参考CentOS7.2 安装 PHP7.2 下面的代码也是一种方法 yum -y install libmcrypt libmcrypt-devel mcrypt mhashrpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmrpm -Uvh https://mirror.webtatic.com/yum/el7/w