またはmcrypt
を使用せずにphp-をインストールするport
brew
注: これらの手順は、徹底することを目的としているため、長くなっています。プロセスは実際にはかなり簡単です。あなたが楽観主義者なら、mcrypt 拡張機能のビルド
セクションまでスキップできますが、私が行ったエラーが表示されautoconf
、libmcrypt
最初にインストールするように指示されている可能性があります。
OSX 10.9の新規インストールでこれを実行しました。私にとってうまくいった解決策は、 ckmの解決策に非常に近いものでした.完全を期すために、彼らの手順と私自身の手順を完全に含めています。私の主な目標 (「持つ」以外) は、システム全体への影響を最小限に抑える方法でインストールを実行することでした。つまり、手動で行うことを意味します (いいえ、いいえ)mcrypt
port
brew
手動で行うには、最初にいくつかの依存関係が必要です。1 つは PHP モジュールをビルドするためのもので、もう 1 つはmcrypt
具体的なものです。これらはautoconf
とlibmcrypt
で、どちらもすでに持っているかもしれませんが、OSX 10.9 の新規インストールではどちらもありません。
autoconf
Autoconf (より適切な説明がないため) は、まったく異なるわけではありませんが、それでも非常に異なるシステムにコンパイル方法を伝えるために使用されます。たとえば、ファイルシステム階層が異なるにもかかわらず、 OSXで行うのと同じ基本コマンド セットを使用して、Linux でモジュールをビルドできます。完全性のために。これは非常に簡単です:
$ 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
libmcrypt
次に、拡張機能の根幹を提供するために使用されるが必要になりますmcrypt
(拡張機能自体は、このライブラリーへの PHP インターフェースの提供です)。私が使用した方法は、ここで説明した方法に基づいていますが、できる限り単純化しようとしました。
まず、SourceForgelibmcrypt
から入手できるソースをダウンロードします。
http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2/download
実際のダウンロード リンクにたどり着くには、標準の SourceForge フープをジャンプする必要がありますが、取得したら、次のようなものに渡すことができます。
$ 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
これが機能していることを確認する唯一の方法は、拡張機能自体の./configure
手順を実行することです (以下)。mcrypt
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.so
は、PHP 拡張機能のディレクトリにあります。次に、それについて PHP に伝える必要があります。
mcrypt 拡張機能の構成
ファイル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
ファイルのどこかに。ファイルで を検索;extension=
し、最初に出現する直前に追加することをお勧めします。
これが完了したら、インストールと構成は完了です。以下を実行して、これが機能していることを確認できます。
php -m | grep mcrypt
これは " mcrypt
" を出力し、他には何も出力しません。
PHP の使用が Apache の に依存している場合httpd
は、Web 上の変更に気付く前にそれを再起動する必要があります。次の方法で行うことができます。
$ sudo apachectl restart
これで完了です。