Installare estensioni Php5 su Leopard senza ricompilarlo

Pubblicato: 11 febbraio 2009 in Php, Tecnico
Tag:, ,

Come tutti i felici possessori di Mac sanno, il Php fornito con Leopard ha una serie di carenze che lo rendono a volte inutilizzabile per un uso un po’ più evoluto di quello base. In particolare a me serviva al volo, senza dover ricompilare tutto, l’attivazione dei moduli mcrypt e soap.

La soluzione si trova su Pagebakers:

Scaricare e scompattare la versione 5.2.6 (quella attualmente installata dal sistema) in una directory:

cd /tmp
curl -O http://it.php.net/distributions/php-5.2.6.tar.bz2
tar xvjf php-5.2.6.tar.bz2

Spostarsi nella nuova cartella e dare i seguenti comandi:

cd php-5.2.6/
export LIBTOOLIZE=glibtoolize MACOSX_DEPLOYMENT_TARGET=10.5
cd ext/mcrypt # Successivamente fare lo stesso con soap
phpize

Ora possiamo compilare l’estensione:

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch ppc -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch ppc -g -Os -pipe" CXXFLAGS="-arch ppc -g -Os -pipe" LDFLAGS="-arch ppc -bind_at_load" ./configure
make
sudo make install

Questo nel caso come il mio in cui il Mac sia ancora un PowerPc. Nei parametri per il “configure” bisogna invece specificare -arch x86_64 nel caso di un Mac con processore Intel.
Ora l’estensione è compilata ed installata, bisogna attivarla a livello di configurazione del Php. Per fare questo bisogna modificare il php.ini, che si trova in /private/etc/php.ini
Impostare ‘extension_dir’ a ‘/usr/lib/php/extensions’ e abilitare l’estensione aggiungendo le linee ‘extension=soap.so’ e ‘extension=mcrypt.so’ (nel mio php.ini c’erano, commentate, le linee ‘extension=php_soap.dll’ e ‘extension=php_mcrypt.dll’).
Creiamo un link simbolico alle due estensioni:

sudo ln -s /usr/lib/php/extensions/no-debug-non-zts-20060613/soap.so /usr/lib/php/extensions/soap.so
sudo ln -s /usr/lib/php/extensions/no-debug-non-zts-20060613/mcrypt.so /usr/lib/php/extensions/mcrypt.so

E finalmente è sufficiente riavviare Apache per rendere attive le modifiche:

sudo apachectl restart
About these ads

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...