Mac OS X 10.5 Leopard üzerinde PEAR nasıl ayarlanır

3 Cevap php

Ben sonuçta ben kolayca phpunit yükleyebilirsiniz böylece PEAR yüklemeye çalışıyorum. Ben yerel olarak test edebilirsiniz böylece Mac, Apache, MySQL, PHP, PHPUnit geliştirme ortamı kurmak istiyorum. Zaten Apach, MySQL ve PHP çalışma var. Şimdi tek ihtiyacım ben bunu kurmak PEAR gerekiyor demektir, PHPUnit olduğunu.

Ben her yerinde arandı, ve Mac OS X 10.5 üzerinde PEAR yüklemek için nasıl "öğretici" bir kaç varyasyon vardır. Ancak, bunlardan herhangi işe almak gibi olamaz! Herkes bu başarı olmuştur? Ben olması gerektiği gibi her şeyi kurmak olduğunu tamamen emin değilim, yani Mac OS X 10.5 yollarını içeren "default", ya da her şey gitmeli nereye basit bir açıklama da olabilir, ben bunu takdir ediyorum.

this öğretici ardından ben aşağıdakileri yapın:

curl http://pear.php.net/go-pear > go-pear.php
sudo php -q go-pear.php

Ben yolları dahil 7 ile bir listeye almak kadar enter tuşuna basın:

1. Installation prefix ($prefix) : /Users/andrew
2. Temporary files directory     : $prefix/temp
3. Binaries directory            : $prefix/bin
4. PHP code directory ($php_dir) : $prefix/PEAR
5. Documentation base directory  : $php_dir/docs
6. Data base directory           : $php_dir/data
7. Tests base directory          : $php_dir/tests

Ben değiştirmek Installation prefix tuşuna basın, türü Y de yüklemeye devam etmek girmek, /usr/local olmak PEAR_Frontend_Web-beta, PEAR_Frontend_Gtk2, MDB2. Sonunda, her şey yüklenir.

Sonraki ...

İlk denemede, ben include_path php.ini dosyası üzerinden yorumladı düşünüyorum, ama ben zaten bu çizgi değişti ettik, ve bu ben yüklemeden denedim ilk kez değil, çünkü ben almak Aşağıdaki mesaj:

WARNING!  The include_path defined in the currently used php.ini does not
contain the PEAR PHP directory you just specified:
</usr/local/PEAR>
If the specified directory is also not in the include_path used by
your scripts, you will have problems getting any PEAR packages working.

Would you like to alter php.ini </private/etc/php.ini>? [Y/n] :

Ben yazın Y ve armut otomatik benim yolunu şunlardır güncellemek atalım:

php.ini </private/etc/php.ini> include_path updated.

Current include path           : .:/usr/share/pear
Configured directory           : /usr/local/PEAR
Currently used php.ini (guess) : /private/etc/php.ini

Ben devam ediyor ve şu mesajı almak için enter tuşuna basın:

The 'pear' command is now at your service at /usr/local/bin/pear

** The 'pear' command is not currently in your PATH, so you need to
** use '/usr/local/bin/pear' until you have added
** '/usr/local/bin' to your PATH environment variable.

Run it without parameters to see the available actions, try 'pear list'
to see what packages are installed, or 'pear help' for help.

For more information about PEAR, see:

  http://pear.php.net/faq.php
  http://pear.php.net/manual/

Thanks for using go-pear!

PHP Warning:  rmdir(/usr/local/temp): Not a directory in /Users/andrew/go-pear.php on line 1237

Warning: rmdir(/usr/local/temp): Not a directory in /Users/andrew/go-pear.php on line 1237

Update: Ben bu son iki uyarılar geldi neden ben biliyorum. Daha önce, ben / tmp simgesel bir bağlantı oluşturarak geçici dizin sorunu çözmek için çalıştı ama ben eğer doğru anlamak, ARMUT o zaman bitmiş silmek için gidiyor, kurulum için kendi geçici dizin oluşturmak için çalışıyor. Bu yükleme bittiğinde temp dizini silmek için denemek için gidiyor beri Yani bu sembolik bağ oluşturduk olmamalıdır.

3 Cevap

Burada yanlış gidiyor olabilir bir kaç şey var, bu sadece bir tahmin.

İlk olarak, two size dert gerekir yollarını içer var. İlk PHP yolu bulunur. PEAR kütüphaneleri özel paketlenmiş, (çoğunlukla) sadece PHP kodu vardır. Bir ARMUT modül yüklediğinizde bu kütüphane için gerekli tüm PHP kodu indirirken, ve diğer ARMUT sen, o cümle hakkında (üzgünüm güveniyor takıyoruz kütüphane kütüphaneler ama söylemek için daha iyi bir yolu var emin değilim ) söyledi. Bu içeren yol php.ini dosyaları (, sık sık aynı dosya komut satırı php için bir dosya, yoru web sunucusu php için başka) ayarlanır.

İkinci sizin UNIX / kabuk yolu bulunur endişelenmenize gerekir yolunu içerir. Bu, bilgisayarınızın bir terminalden bir komut girerken komutların arayacaktır yoldur. 'Armut' komutu bir komut satırı komutu.

Yani, biz emin olmak gerekir

  1. Web siteniz için php.ini dosyasının dahil yolunda PEAR dizini vardır
  2. Komut satırı php uygulama için php.ini dosyasının dahil yolunda PEAR dizini vardır
  3. Sizin kabuk uygulaması (terminal, OS X üzerinde konum olası BASH) kendi dahil yolunda PEAR dizini vardır

Yani, 1 numara için, işlev çağrısı içerdiğini, sunucu üzerindeki bir PHP sayfası koymak

phpinfo();

Bu sunucu hakkında bilgi bir sürü listeler. Php.ini konumu arayın. , Bir metin editörü bu dosyayı açmak include_path değişkeni için bakmak, ve (diğer yolları çıkarmayın, sizinki eklemek) ve PEAR dizin yolunu ekleyin.

Sayı 2 için, komut satırında aşağıdaki komutu çalıştırın

php -r "phpinfo();" | grep '.ini'

Hatları bir demet "Loaded Configuration File" gibi bir şey okur bir bakın, yazdıracaktır. , Bir metin editörü bu dosyayı açmak include_path değişkeni için bakmak, ve (diğer yolları çıkarmayın, sizinki eklemek) ve PEAR dizin yolunu ekleyin.

Son olarak, ve bu senin sorunun olduğunu düşünüyorum, biz armut komut satırı komutu kabuk / bash yolunda olmasını sağlamak için ihtiyaç vardır. İşte bu hata için refering ne

** The 'pear' command is not currently in your PATH, so you need to

Adlı ev dizininde bir dosya '. Bash_profile' olmalıdır. Bu gizli bir dosya, bu yüzden Finder showup olmaz. Bir metin editörü ile açın. Bu gizli bir dosya olduğu için sorun yaşıyorsanız, komut satırı pico editörü kullanın. Ctrl-X pico kurtaracak

cd ~
pico .bash_profile

Bu dosya bir terminal penceresi açmak için kabuk her tarafından çalıştırılmaktadır. Eğer bilgisayar bu klasördeki komutu aramak olacak yoru, bir komutu çalıştırmak istediğinizde Biz, yani PATH / usr / local / bin eklemek için gidiyoruz. . Bash_profile altına aşağıdaki satırı ekleyin

export PATH=/usr/local/bin:$PATH

Bu, daha fazla veya daha az, şu PHP kodu equivilant edilir

$PATH = '/usr/local/bin:'.$PATH

Komutunu aramak için ilk kolon ayrılmış bir yer olarak / usr / local / bin ekleyerek, ve sonra ona mevcut yolun kalanını ekliyoruz. Eğer bu hat ekledikten sonra, sizin terminali kapatın yeniden açın ve sonra yazın

pear

Bu size geçerli armut komutların bir listesini vermelidir, ama daha da önemlisi armut yolunuzda olduğunu bildireceğiz.

İyi şanslar!

Ben bunu anladım. Eğer armut ikili / usr / local / bin altında yüklü olmasını istiyorsanız, / usr / local altında çalıştırmak gerekir böylece, sen armut yüklü istediğiniz nerede go-pear.php işletilen "ZORUNDA"

:-)

kullanıcı "bryan kennedy" (yukarıda) "php.ini" gerekli "include_path" değişim için sözdizimi bilmek istedim

(Ben OP benzer bir sorunu vardı ve ben sadece bu yazının yardımı ile sorunu sabit.)

php.ini değiştirme gibi görünecektir ...

include_path=".:/path_to_pear_dir/PEAR"

Bu size "go-pear.php" değişikliği yapmak için izin ne zaman nasıl görünüyor ....

;***** Added by go-pear
include_path=".:/usr/local/bin/PEAR"
;*****