PER FAVORE NON FARE QUESTO !!! LA TUA MIGLIORE SCOMMESSA È REINSTALLARE MAC OS X
OK, ho appena trovato un modo. È
kinda hacky, ma funziona.
Quando si tenta di eseguire PHP 7
, apache controlla sotto /usr/lib
. Per verificare quale versione è attualmente disponibile, è possibile eseguire otool -L /usr/lib/libxml2.2.dylib
.
che sarà qualcosa di probabilmente output come questo:
/usr/lib/libxml2.2.dylib (compatibility version 10.0.0, current version 10.9.0)
Ma Apache e PHP vogliono versione 12.0.0
, quindi cerchiamo di installarlo attraverso homebrew
.
brew install libxml2 libxslt libiconv
Questo installerà libxml
a qualcosa di simile /usr/local/Cellar/libxml2/2.9.4/lib
. Questa directory conterrà un file chiamato libxml2.2.dylib
.
Se si esegue otool -L /usr/local/Cellar/libxml2/2.9.4/lib/libxml2.2.dylib
, il risultato sarà:
/usr/local/opt/libxml2/lib/libxml2.2.dylib (compatibility version 12.0.0, current version 12.4.0)
Quindi questa è la versione di PHP e Apache stanno cercando. Vogliamo spostare questo file su /usr/lib
. Ma non così velocemente, abbiamo già un file chiamato libxml2.2.dylib
in quella cartella, quindi lascia semplicemente aggiungere l'estensione .bak
nel caso in cui ne avessimo bisogno di nuovo.
sudo mv /usr/lib/libxml2.2.dylib /usr/lib/libxml2.2.dylib.bak
Ora possiamo spostare il file che homebrew ha installato in questa directory.
sudo cp /usr/local/Cellar/libxml2/2.9.4/lib/libxml2.2.dylib /usr/lib
Questo è tutto! Ora dovresti essere in grado di eseguire
sudo apachectl -e info -k restart
senza errori e
PHP 7
dovrebbe funzionare correttamente.
non è sicuro su osx, ma 'apt-get install libxml2-dev' – hjpotter92
Questa domanda deve essere risolta ... – Jay
Assicurati di eseguire' brew install libxml2 libxslt libiconv'. Sta guardando la versione del sistema. – miken32