Installare estensione php mcrypt su OSX Yosemite

 
28 gen 2015

Vi segnalo oggi questa procedura per OSX Yosemite che permetterà di installare l'estensione mcrypt per php, nativamente non compresa nello stack apache + php fornito nativamente da OSX.

La sua mancanza, per esempio, compromette l'esecuzione di eCommerce come Prestashop con gli strumenti base forniti da Apple.

La procedura originale proviene da questo sito: http://coolestguidesontheplanet.com/install-mcrypt-php-mac-osx-10-10-yosemite-development-server/ tuttavia non funziona esattamente così, ci sono alcune variazioni da fare ed errori da correggere. Ecco quanto ha funzionato nel mio caso:

  1. Scaricare i sorgenti della libreria mycript da questo link: http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz/download
  2. Scaricare i sorgenti di php 5.5.14 da questo link: http://php.net/get/php-5.5.14.tar.bz2/from/a/mirror
  3. Creare una cartella di lavoro e scompattarci dentro i 2 files scaricati
  4. Andare nella cartella libmcrypt-2.5.8, aprire un terminale che punti su questa cartella e digitare:
    ./configure
    make
    sudo make install
    Il comando sudo ovviamente richiederà la password di amministrazione.
  5. Scaricare il file a questo link nella nostra cartella di lavoro: http://ftp.gnu.org/gnu/autoconf/autoconf-latest.tar.gz

  6. Scompattare il file scaricato, aprire un terminale che punti alla cartella appena estratta e digitare:
    ./configure
    make
    sudo make install
  7. A questo punto, la parte che nella procedura del sito originale manca, senza la quale il tutto non funzionerà. Aprire la cartella Applicazione, localizzare XCode e dal menu del tasto destro selezionare "Mostra contenuto pacchetto", si aprirà un'ulteriore finestra del finder. Localizzare la cartella 

    Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/php

  8. Copiare tutte le cartelle contenute nella cartella al punto 7 in una nuova cartella (che chiameremo "include") nella nostra cartella di lavoro iniziale
  9. Da terminale digitare:
    cd /usr
    sudo mkdir include
    cd include
    sudo mkdir php
  10. Da terminale posizionarsi dentro la cartella include e digitare:
    sudo cp -R .  /usr/include/php
  11. Qui possiamo riprendere il tutorial del sito originale. Con il terminale posizioniamoci dentro la nostra cartella di lavoro in php-5.5.14/ext/mcrypt e digitiamo il seguente comando:
    /usr/bin/phpize
    Il risultato che otterremo è effettivamente:
    Configuring for:
    PHP Api Version: 20121113
    Zend Module Api No: 20121212
    Zend Extension Api No: 220121212
  12. Continuiamo con le solite istruzioni per la compilazione:
    ./configure
    make
    sudo make install
    Se tutto è andato liscio, otterremo questo messaggio:
    Installing shared extensions:  /usr/lib/php/extensions/no-debug-non-zts-20121212/
  13. Ultimo passo: aggiungere l'estensione così creata al php. Andiamo ad editare il file /etc/php.ini (se non lo abbiamo è sufficiente copiarlo da php.ini.default presente nella stessa cartella) aggiungendo alla fine di esso la seguente riga:
    extension=mcrypt.so
  14. Non ci resta che riavviare Apache e verificare il phpinfo.

Una bella sudata, ma ha funzionato!

Nota bene: è richiesta la presenza di XCode sulla macchina.

© Gabriele Pala, 2012-2014. All rights reserved. P.IVA 01137470314 - C.F. PLAGRL77S16L424T | Cell: 320 3334704 | Mail: info@fvg-informatica.it | Strada delle Acacie, 5/A - Staranzano (GO) | Privacy & Cookies
Questo sito non utilizza cookie di profilazione propri. Sono invece utilizzati cookie tecnici e di terze parti per fini operativi, statistici e pubblicitari. Per sapere a cosa servono i cookie e per impostare le proprie preferenze visitare la pagina Privacy & Cookies. Continuando la navigazione o chiudendo questo avviso, acconsenti all'uso dei cookie e ai termini riportati alla pagina Privacy Policy.
OK