51

Yosemite 10.10 - PHP 5.5.14 ビルドでphp-gdmcryptをインストール/有効にする方法は?

次の手順では、最新の PHP 5.5.x がインストールされることに注意してください。

gd と mcrypt がインストールされているかどうかを確認するには$ php -m、コンパイルされたモジュールを表示するために使用します。必要なモジュールがない場合は続行し、受け入れられた回答を参照してください。


GD

つまり、Apple は GD をインストールしました (そして、あなたは彼らのビルドの PHP を使用していますが、これは問題ありません) が、PNG のサポートは含まれていませんでした。

imagecreatefrompng()関数が欠落している場合は、 「完全な」gd (png サポート付き)モジュール が欠落していることは間違いありません。

"Call to undefined function imagecreatefrompng()"

ここに画像の説明を入力


Mcrypt

受け入れられた回答を使用してbrewをインストールし、gdインストールの一部を省略し(必要な場合を除く)、次の手順を使用します。

  1. 検索してください -$ brew search mcrypt
  2. 必要な PHP のバージョンを選択します
  3. インストール -$ brew install php55-mcrypt
  4. を使用して確認する$ php -m | grep mcrypt

PHP のバージョンを切り替えたいですか?

brew-php-switcherをチェックして、指示に従ってください。

4

4 に答える 4

81

そうです、Yosemite のビルトイン PHP には PNG と FreeType のサポートがありません。
El Captian の更新 2015/10: OS X 10.11 El Capitan では PNG のサポートが復活しましたが、FreeType はまだありません。

解決

Homebrew パッケージ マネージャーを使用して、簡単に完全な PHP をビルドしてインストールし、Apache の構成でそれを置き換えます。以下の手順に従えば、プロセス全体は約 10 分しかかかりません。

簡単な (ただし完全な) ウォークスルー

(注 1:ここでは、OS X 用のパッケージ管理システムであるHomebrewを使用します。別のパッケージ マネージャーであるMacPortsに精通している場合は、そのシステムで同じ結果を得ることができます。私の Homebrew ソリューションを並行して使用することも可能です。
(注 2: インストール プロセスに関するすべての詳細を読みたい場合は、Homebrew の基本的なインストールと Homebrew PHP のインストールに関する情報を参照してください。しかし、次の手順に従います。)

さあ、行きましょう...

最初に App Store から Xcode をインストールします。すでにお持ちの場合は、App Store をもう一度チェックして、最新バージョンであることを確認してください。

Xcode Command Line Toolsをインストールする必要があります。これを行うには、ターミナルを開いて次のように入力します。

xcode-select --install

次のコマンドは、Homebrew パッケージ マネージャー システムをインストールします。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

スクリプトは何をするかを説明し、実行する前に一時停止します。

次に入力するコマンドは、一種のシステム ステータス テストです。

brew doctor

これにより、Homebrew インストールの基本がチェックされます。「MacPorts または Fink がインストールされています: /opt/local/bin/port ...」
という警告が表示されましたが、無視しました。;)

ここで、必要な依存関係を持つ homebrew/dupes タップをセットアップします。

brew tap homebrew/dupes

必要な依存関係もある homebrew/versions タップをセットアップします。

brew tap homebrew/versions

次に、次のコマンドを実行します。

brew tap homebrew/homebrew-php

これで、最終的に PHP をビルドする準備が整いました。使用可能な構成オプションのリストについては、次のいずれかを実行できます。

brew options php55
brew options php56

しかし、デフォルトを使用するだけで問題ありませんでした。
これを行うには、必要に応じて、次の 2 つのいずれかを入力ます。

brew install php55
brew install php56

(これには時間がかかります。しばらくお待ちください。)

Yosemite (10.10.5) に php56 (5.6.x) をインストールするとバグが発生します。github でこの問題を参照してください。代わりに使用brew install php56 --without-ldapします。

「OpenSSL が見つかりません」というタイプのエラーが発生した場合は、最初に説明したように、Xcode コマンド ライン ツールがインストールされていません。;) 先に進み、それらをインストールして、最後のコマンドを再実行してください。

PHP は現在ビルドされており、スクリプトは使用方法に関するいくつかの詳細で終了します。

httpd.conf (/private/etc/apache2/httpd.conf にある必要があります) を開き、インストールした PHP バージョンに応じて、次の 2 行のいずれかを追加して PHP を有効にします。

LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so

Yosemite 独自の PHP バージョンから存在する可能性がある既存のLoadModule php5_module...行をコメント アウトすることを忘れないでください。

アパッチを再起動する

sudo apachectl restart

新しい php.ini ファイルは/usr/local/etc/php/5.5/php.iniにあります。

楽しみ!

于 2014-10-22T10:37:15.590 に答える
3

コメントできる担当者がいませんが、OS X Server for Yosemite (App Store のバージョン 4) を使用している場合、編集するファイルは次のとおりです。

/library/server/web/config/apache2/httpd_server_app.conf

私は今このように見え、自作のphp 5.6を使用した後に動作することを確認しました。

#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so
于 2015-01-05T20:10:02.403 に答える
0

Yosemite に付属する標準の Apache は、後で更新するファイル

sudo brew install php55

にある/etc/apache2/httpd.conf

php.ini の場所も変更されていることに注意してください。Yosemite に付属する標準のものは /etc/php.ini にあり、自作バージョンのものは次の場所にあります。/usr/local/etc/php/5.5/php.ini

于 2015-01-10T16:53:34.663 に答える