PHP 5.4 Installazione su Mountain Lion

3

Ho appena installato Mountain Lion e, naturalmente, ho dovuto configurare Xcode Command Line Tools, reinstallare Git e fare altre cose per rimetterlo in funzione per la programmazione. Naturalmente, PHP è stato spostato a 5.3 da 5.4 che avevo precedentemente installato quando il mio MacBook Pro stava eseguendo Lion. Ho eseguito il processo scaricando PHP 5.4, decomprimendolo (tar xf php5.4), configurandolo (./configure con e senza opzioni), rendendolo (make), eseguendo il make test (make test) e installando il make (sudo make install). Quando ho eseguito la configurazione con opzioni che non mi permetteva di eseguire e quando eseguivo senza opzioni di configurazione non è riuscito a passare make test un paio di volte (quando ciò si è verificato ho inviato le informazioni a Zend). Quando ha superato il test di make, ha affermato che è stato installato con successo, ma quando verifico la versione (php -v) viene comunque fornito con PHP 5.3. L'ho fatto quasi nove volte con riavvii e ho scaricato di nuovo il pacchetto ogni volta; niente salsa Qualcuno ha qualche idea su cosa potrebbe andare storto? Qualsiasi aiuto su questo argomento sarebbe molto apprezzato.

    
posta 29.07.2012 - 17:28
fonte

3 risposte

2

Ti consiglio caldamente di utilizzare il programma di installazione del pacchetto o di utilizzare una pila completa di opzioni di configurazione durante la compilazione, inclusa l'opzione --prefix quindi sai dove viene installato il binario.

Posso solo supporre che PHP 5.4 si sia installato in /usr/local/bin o altrove e non abbia semplicemente sovrascritto il file binario predefinito in /usr/bin . E sembra che tu non abbia modificato la tua variabile PATH per dare priorità alla directory bin di /usr/local con ad es. PATH="/usr/local/bin:$PATH" nel tuo profilo .bash. Pertanto, è previsto che la percentuale di% co_de continui a utilizzare php e non /usr/bin/php .

In alternativa, potresti semplicemente collegare il nuovo binario php a / usr / bin / php, (eliminare o rinominare il file binario predefinito prima):

ln -s /usr/local/bin/php /usr/bin/php
    
risposta data 29.07.2012 - 19:10
fonte
1

Ho installato MAMP e tutto funziona correttamente.

    
risposta data 29.07.2012 - 19:10
fonte
1

Hai provato a installarlo tramite Homebrew ?

Hai anche trovato un post del blog (devi scorrere un po 'verso la sezione Homebrew) che sta dicendo che il problema con la compilazione di PHP potrebbe essere perché ML non viene fornito con X11, ma c'è una soluzione alternativa.

In realtà, ecco il bit pertinente dal post del blog:

Apple removed support for X11 in Mountain Lion. This means that anything that was linking to a library that was supplied by X11 would now complain and die. This meant our custom compiled version of PHP at work. dylibs were missing which prevented PHP from running and header files could not be found which prevented an update to PHP from compiling.

The Homebrew folks saw it coming a while back. There are pull requests and changes in branches that deal with this issue. However the best I can tell not all of that has made it in to master and its still not ready to go.

There is a work around, and it relies on installing XQuartz to provide the required X11 libraries. This may not be required for everyone, but for those of us that run specific versions of software it means a headache. In our case, for PHP, it meant that libraries required for font and image handling were missing. And these are just the errors that came up first. I’m not sure how many other things that X11 provided were waiting to error out should we have tried to link in the parts as we found the errors.

First, download and install XQuartz. After doing that symlink it in to where Homebrew expects X11 to be. We had folder there, presumably left over from the upgrade.

$ cd /usr
$ mv X11 X11.bak
$ ln -s /opt/X11 X11

Now, since this was an OS upgrade all of the config and ini files have been renamed and replaced. This means that the Apache conf and PHP ini files needed replacing. Fortunately for us we had a custom Homebrew Formula that handled this portion of the environment for us. So we just had to uninstall and reinstall that Formula to re-configure Apache and PHP how we had it. Your setup will of course be different.

    
risposta data 30.07.2012 - 02:02
fonte

Leggi altre domande sui tag