Bagaimana cara menginstal PHP, Pear, PECL, dan APC dengan Homebrew di Mac OS X?

13

Saya mencoba menginstal APC untuk PHP 5.3 dengan cara termudah. Saya suka Homebrew jadi saya mulai menyusuri rute itu. Saya dapat menginstal PHP 5.3.6 dengan perintah ini:

brew install https://github.com/adamv/homebrew-alt/raw/master/duplicates/php.rb --with-mysql

Saya pikir ini seharusnya menginstal PHP, Pear, dan PECL. Tampaknya untuk menginstal ini baik-baik saja.

Sekarang ketika saya mencoba menginstal APC:

$ pecl install apc
downloading APC-3.1.9.tgz ...
Starting to download APC-3.1.9.tgz (155,540 bytes)
.................................done: 155,540 bytes

Warning: require_once(Archive/Tar.php): failed to open stream: No such file or directory in PackageFile.php on line 305

Warning: require_once(Archive/Tar.php): failed to open stream: No such file or directory in /usr/local/Cellar/php/5.3.6/lib/php/PEAR/PackageFile.php on line 305

Fatal error: require_once(): Failed opening required 'Archive/Tar.php' (include_path='/usr/local/Cellar/php/5.3.6/lib/php') in /usr/local/Cellar/php/5.3.6/lib/php/PEAR/PackageFile.php on line 305

Bagaimana saya bisa memperbaikinya?

Andrew
sumber

Jawaban:

9

Sekarang homebrew-phptelah dimigrasi ke homebrew-coredan secara default, PECL harus diinstal bersama dengan PHP Anda.

Berikut langkah-langkah yang disarankan:

  1. Instal ulang PHP melalui: brew install php.
  2. Periksa peclperintah dengan: which -a pecl.

Untuk melihat file yang diinstal, lihat: brew list php.

Untuk menginstal ekstensi PHP, Anda harus menggunakan PECL sebagai cara yang disarankan.

Dengan migrasi ke Homebrew-core, rumus php telah berhenti mengambil alih peran PECL. Instalasi xdebug dapat (dan harus) dilakukan melalui PECL. Sumber: GH-26007

Misalnya: pecl install apcatau pecl install xdebug.

Jika Anda memiliki masalah dalam menginstal ekstensi, Anda harus melaporkannya ke pengelola. Periksa situs web PECL untuk lebih jelasnya.

kenorb
sumber
2

pecldan peardisediakan dengan versi PHP Homebrew:

brew install php
pecl install apcu

Jika Anda lelah pecldan peardisediakan oleh php, coba ini:

ls -al $(which pecl)
ls -al $(which pear)

Kedua lokasi harus terhubung ke Cellar/php/...

Catatan, macOS menyediakan versi php yang umumnya di belakang Homebrew. Untuk memastikan Anda menjalankan versi Homebrew, awali dengan phpperintah Anda $(brew --prefix php)/bin.

Contoh untuk Komposer:

$(brew --prefix php)/bin/php composer.phar install

Alasan ini penting adalah karena ekstensi umum - seperti ext-intldan ext-gettextdisediakan secara otomatis dan akan memperbaikinya secara otomatis.

Perhatikan, untuk php-fpm, gunakan brew reinstall php --with-fpm. The php-fpmpath akan ... $(brew --prefix php)/sbin/php-fpm.

tresf
sumber
1

Perintah di bawah ini akan membantu

curl -s -O https://pear.php.net/install-pear-nozlib.phar

sudo php install-pear-nozlib.phar -d /usr/local/lib/php -b /usr/local/bin
Gampesh
sumber
0

Situs GitHub PHP buatan Homebrew mengatakan bahwa:

Pear tidak lagi dikompilasi secara default, sebaliknya Anda perlu menginstal php dengan opsi --with-pear, seperti: brew install php56 --with-pear.

Jadi, untuk membuat PHP 7.0 berfungsi, gunakan perintah instalasi berikut:

brew install php70 --with-pear

Anda tentu saja dapat menggunakan ini dengan versi PHP lain juga.

Markus
sumber
0

Anda tidak perlu menginstal apc.
Cukup tambahkan

apc.enabled=on
apc.shm_size=64M
apc.enable_cli=on

untuk Anda php.inidan pastikan bahwa apcu Anda ok.

pengguna1067715
sumber