为可能出现的n00b问题提前道歉,我正在尝试在我的OSX Mountain Lion机器上安装用于PHP的mcrypt扩展。
下面的步骤在终端是我所做的到目前为止实现我的PHP安装
cd /path/to/downloaded/php-5.3.21/ext/mcrypt/
/usr/bin/phpize
./configure
cd /path/to/downloaded/php-5.3.21
./configure --with-config-file-path=/private/etc/php.ini --with-apxs2=/usr/sbin/apxs
make
sudo make install
这似乎工作得很好,安装PHP 5.3.21罚款。我已经完成了
sudo nano /private/etc/php.ini
包括
extension=mcrypt.so
在Apache重新启动时,phpinfo()不会显示已加载mcrypt扩展。
然后,我尝试在php中指定扩展_dir。伊尼,又一次没有运气。
我已经做了
locate mcrypt.so
/opt/local/lib/php/extensions/no-debug-non-zts-20090626/mcrypt.so
/usr/local/Cellar/php53-mcrypt/5.3.18/mcrypt.so
尝试了两个目录作为extension_dir,没有运气。
./configure --with-config-file-path=/private/etc/php.ini --with-apxs2=/usr/sbin/apxs --with-mcrypt
这似乎工作正常,但在“制作”时,它会返回
ext/mcrypt/mcrypt.o: No such file or directory
ext/mcrypt/mcrypt_filter.o: No such file or directory
同样,没有成功。
我做错了什么?似乎mcrypt.so的物理编译没有发生,或者编译错误,因为我怀疑在定位下发现了另一个mcrypt.so?
有人请帮忙吗?我浏览了一页又一页的谷歌搜索,运气不好!
注意:这些说明很长,因为它们要彻底。这个过程实际上相当直接。如果你是一个乐观主义者,你可以跳到构建mcrypt扩展部分,但是你很可能会看到我所做的错误,告诉我先安装autoconf
和libmcrypt
。
我刚刚在OSX 10.9的新安装上经历了这一点。对我有效的解决方案非常接近ckm的解决方案——为了完整起见,我包括了他们的步骤和我自己的步骤。我的主要目标(除了拥有mcrypt
之外)是以一种对整个系统影响最小的方式执行安装。那就意味着手动做事(没有port
,没有brew
)
要手动操作,首先需要两个依赖项:一个用于构建PHP模块,另一个用于mcrypt
。它们是autoconf
和libmcrypt
,您可能已经安装了它们中的任何一个,但在新安装的OSX 10.9上都不会安装。
Autoconf(由于缺乏更好的描述)用于告诉不是完全不同但仍然非常不同的系统如何编译东西。它允许您在Linux上使用与在OSX上相同的一组基本命令来构建模块,例如,尽管它们的文件系统层次结构不同,等等。我在StackOverflow上使用了Ares描述的方法,为了完整性,我将在这里重复该方法。这一条非常直截了当:
$ mkdir -p ~/mcrypt/dependencies/autoconf
$ cd ~/mcrypt/dependencies/autoconf
$ curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-latest.tar.gz
$ tar xzf autoconf-latest.tar.gz
$ cd autoconf-*/
$ ./configure --prefix=/usr/local
$ make
$ sudo make install
接下来,通过运行验证安装:
$ which autoconf
应该返回/usr/local/bin/autoconf
接下来,您将需要libmCrypt
,用于提供mcrypt
扩展的核心内容(扩展本身是对该库的PHP接口的提供)。我使用的方法是基于这里描述的方法,但是我已经尽力简化了事情:
首先,下载从SourceForge获得的libmCrypt源代码,并在撰写本文时提供,具体而言,请访问:
http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2/download
您需要跳过标准的SourceForge hoops才能获得真正的下载链接,但一旦获得了该链接,您就可以将其传递给以下内容:
$ mkdir -p ~/mcrypt/dependencies/libmcrypt
$ cd ~/mcrypt/dependencies/libmcrypt
$ curl -L -o libmcrypt.tar.bz2 '<SourceForge direct link URL>'
$ tar xjf libmcrypt.tar.bz2
$ cd libmcrypt-*/
$ ./configure
$ make
$ sudo make install
据我所知,验证此功能是否有效的唯一方法是通过/为
mcrypt
扩展本身配置步骤(如下)
这是我们的实际目标。希望进入依赖地狱的短暂阶段现在已经结束。
首先,我们需要获取
mcrypt
扩展的源代码。这是所有PHP源代码中最容易获得的。所以:确定您需要什么版本的PHP源代码。
$ php --version # to get your PHP version
现在,如果幸运的话,可以从主镜像下载当前版本。如果是,您可以键入以下内容:
$ mkdir -p ~/mcrypt/php
$ cd ~/mcrypt/php
$ curl -L -o php-5.4.17.tar.bz2 http://www.php.net/get/php-5.4.17.tar.bz2/from/a/mirror
不幸的是,我的当前版本(5.4.17,在本例中)不可用,所以我需要在http://downloads.php.net/stas/(也是一个官方的PHP下载网站)使用替代/历史链接。对于这些,您可以使用以下内容:
$ mkdir -p ~/mcrypt/php
$ cd ~/mcrypt/php
$ curl -LO http://downloads.php.net/stas/php-5.4.17.tar.bz2
同样,基于您当前的版本。
一旦有了它(以及上面的所有依赖项),就可以进入实际构建/安装模块的主要过程。
$ cd ~/mcrypt/php
$ tar xjf php-*.tar.bz2
$ cd php-*/ext/mcrypt
$ phpize
$ ./configure # this is the step which fails without the above dependencies
$ make
$ make test
$ sudo make install
理论上,
mcrypt。因此
现在位于PHP扩展目录中。接下来,我们需要告诉PHP关于它的情况。
你的
php。ini
文件需要被告知加载mcrypt
。在OSX 10.9中,默认情况下,它实际上具有特定于mcrypt
的配置信息,但除非您告诉它,否则它实际上不会激活mcrypt
。
默认情况下,
php.ini
文件不存在。相反,文件/Private/etc/php.ini.default
列出了默认配置,并且可以用作创建"true"php.ini
的好模板,如果它还不存在的话。
要确定
php.ini
是否已经存在,请运行:
$ ls /private/etc/php.ini
如果有结果,则该结果已经存在,您应该跳过下一个命令。
创建
php。ini
文件,运行:
$ sudo cp /private/etc/php.ini.default /private/etc/php.ini
接下来,您需要添加行:
extension=mcrypt.so
文件里的某个地方。我建议在文件中搜索
;扩展名=
,并在第一次出现之前立即添加它。
完成此操作后,安装和配置就完成了。您可以通过运行以下命令来验证此操作是否有效:
php -m | grep mcrypt
它应该输出"
mcrypt
",而不是其他。
如果您对PHP的使用依赖于Apache的
nicpd
,您需要重新启动它才能注意到Web上的更改。您可以通过以下方式这样做:
$ sudo apachectl restart
你完成了。
我刚刚在《山狮》上看过这个。Homebrew封锁了libconv,它认为它不见了,但实际上是最新的。经过一个小时的尝试,让它识别libconv,我放弃了,并安装了它的旧时尚的方式,这花了所有五分钟...
(download your php version)
$ wget http://www.php.net/get/php-5.3.21.tar.gz/from/a/mirror
$ tar -xvzf php-5.3.21.tar.gz
$ cd php-5.3.21/ext/mcrypt
$ phpize
$ ./configure
$ make
$ make test
$ sudo make install
mcrypt.so现在在你的PHP extdir(/usr/lib/php/扩展/no-debug-non-zts-20090626/
在我的情况下),现在你需要添加到php.ini作为一个模块
$ vi /etc/php.ini
$ (insert) extension=mcrypt.so
$ sudo apachectl restart
完成-无需酿造。有人。
我倾向于在Mac上使用自制软件。它会为你安装和配置所有的东西
http://mxcl.github.com/homebrew/
然后您应该能够使用brew install mcrypt php53 mcrypt
安装它,它就可以正常工作了(tm)。
您可以将53
替换为您正在使用的任何版本的PHP,例如php56 mcrypt
或php70 mcrypt
。如果不确定,请使用brew搜索php
。
还请记住,如果您使用的是内置Mac PHP,它将安装到/usr/bin
中,您可以在终端上看到您使用的PHP与哪个PHP
,它将返回路径。
本文向大家介绍Linux下PHP安装mcrypt扩展模块笔记,包括了Linux下PHP安装mcrypt扩展模块笔记的使用技巧和注意事项,需要的朋友参考一下 系统环境:centOS6.3 APACHE:httpd-2.4.2 PHP:php-5.3.21 一.安装mcrypt 1.下载Libmcrypt,mhash,mcrypt安装包 2 .先安装Libmcrypt 3.安装mhash 4.安装mc
我已经看过很多这样的帖子,并且都看过了,但是我仍然无法运行SQLSRV扩展。你能帮我吗?我将在下面发布我所有的信息: Windows 7 64位 WampServer 2.2 32位 PHP 5.4.3 32位 Apache 2.2.22(分不清VC6还是VC9) MicrosoftSQLServer 2012本地客户端64位 我下载了SQLSRV30。exe。我将dll文件解压缩到C:\wamp
问题内容: 我有一个带有Phalcon3和php 7的Docker容器。我正在尝试安装php扩展名Mcrypt,但不走运。 如果我对容器执行ssh并执行: 我得到以下内容: 有没有办法安装它? 问题答案: 让我们看一下php docker镜像的 官方手册 部分PHP核心扩展 例如,如果您想要一个带有iconv,mcrypt和gd扩展名的PHP- FPM映像,则可以继承您喜欢的基本映像,并编写自己的
我使用Centos6。我想安装mcrypt。我尽量 它安装了。当我再试一次时,它说: 但在我的网页上: 而在phpinfo上则不是 我该怎么解决呢? 谢谢
我在让OCI8在我的服务器安装上工作时遇到了特定的问题。 第一次设置: Win 2008服务器32位 ZendServer for PHP with Apache2.2 PHP版本5.3.14,其中没有php_oci8文件 没有安装甲骨文的东西 我需要能够连接到远程oracle数据库,所以我发现应该使用OCI8扩展。为了使OCI8正常工作,我还应该在服务器上至少需要Oracle Instant C
我安装laravel通过作曲家,但当运行的网站它给一个错误 我也安装了php5-mcrypt,但错误仍然存在。