Installazione fallita di PHPUnit e PEAR su WAMP
by demo on Feb.03, 2010, under php
Oggi mi è venuta voglia di iniziare a provare questa cosa del Test Driven Programming. Così mi sono messo a scrivere un po’ di “regolette” per una sortia di giochino online in stile travian… e mi sono detto. Bah! Potremmo provare questa tecnica di programmazione per sviluppare questo giochino.
Divido l’articolo in due parti: nella prima la mia sfida sarà rivolta a PEAR e Windows. Nella seconda parte, il nemico da affrontare si chiamerà semplicemente PHPUnit.
Parte prima: installiamo PEAR con wampserver.
Una suite di test per php che si integra con Netbeans è PHPUnit. Però PHPUnit ha bisogno di PEAR. Ed ecco lo smacco. Premetto che ho windows in questo momento percui sono andato sul sito di PHPUnit, e da li alla pagina di installazione. PHPUnit ha bisogno di PEAR per essere installato. Molto bene… installiamo PEAR.
Come si installa PEAR? Beh, se andiamo nel blog ufficiale di PEAR, dove mi dicono che devo digitare a riga di comando “go-pear.bat”. Ovviamente non funziona nulla. Al che cerco in giro per la rete una marea di soluzioni diverse ma nessuna efficace. Mi suggeriscono di andare a modificare le path di windows. Non sapendo bene che cosa dovevo fare… ho semplicemente constato che il comando php -d phar.require_hash=0 go-pear.phar non poteva trovare go-pear.phar dalla cartella di php per la banale ragione che si trova dentro la cartella PEAR.
Quindi per riuscire ad installare PEAR, ho modificato leggermente quel comando che tutti segnalavano in php -d phar.require_hash=0 PEAR/go-pear.phar da dentro la cartella di php [nel mio caso c:\wamp\bin\php\php5.3.0]. Ho anche modificato go-pear.bat in questo modo:
@ECHO OFF
set PHP_BIN=c:\wamp\bin\php\php5.3.0\php.exe
%PHP_BIN% -d output_buffering=0 c:\wamp\bin\php\php5.3.0\PEAR\go-pear.phar
pause
Finalmente mi ha richiesto se volevo installare PEAR. E certo che lo voglio installare. Poi ho fatto l’installazione in locale. E poi ho proseguito dicendo si a tutto da bravo informatico. =) Non fate come me insomma. Adesso incrocio le dita e spero che l’installazione di PHPUnit sia più fortunata.
Parte seconda: installiamo PHPUnit.
Cerco di seguire le indicazioni che mi segnala questo blog che pare fare al caso mio: Installare PHPUnit su WAMP. Ovviamente non è andato a buon fine. In particolare quel blog dice di lanciare PEAR_ENV.reg ma la cosa non piace al mio pc. Poco male, non è che mi freghi più di tanto che pear si possa usare ovunque (o almeno spero).
Lancio il comando successivo: pear channel-discover pear.phpunit.de. Molto bene, canale registrato. Ed ora… pear install phpunit/PHPUnit. Secondo voi? Secondo voi niente … non è andato:
Ma perchè?!?!?! Ho cercato in giro per internet “parse error in Unknown on line 14″. 3 link sono usciti dai risultati di Google, andiamo un pochino a vedere che cosa ci dicono. Ah! sia chiaro. A parte il primo blocco di PEAR… quello che state leggendo lo scrivo mentre “agisco”. Pensate: il secondo risultato è di una pagina di supporto a tutt’altro: un errore sulle stringhe json con jQuery. Fatto stà… che in fondo alla pagina in questione ci sono dei thread simili e la vedo questo “PEAR-BUG] Bug #16596 [Opn]: parse error in Unknown on line 14″ ed ho quasi paura a cliccare. Molto bene… quel link porta ad una risposta che dice:
“This happens when running PEAR commands from the Windows
Command Prompt. It seems like the dialog box is being produced by the
Windows OS, perhaps at the behest of PHP or pear.bat.”
Traduco:
Questo accade quando si eseguono i comandi PEAR dal Prompt dei Comandi di Windows. Sembra che la finestra di dialogo venga prodotta da Windows, magari su richiesta di PHP o di pear.bat
Cioè, abbiamo a che fare con un genio. =). Vabè, per non saper ne leggere ne scrivere… proviamo a ficcare il naso dentro pear.bat. Mannaggia… nulla di chiaro. A riga 14 non c’è nulla di interessante. Faccio più attenzione agli errori che mi mostra il Prompt dei comandi e … sorpresa:
phpunit/PHPUnit requires PEAR Installer (version >= 1.8.1), installed version is
1.8.0
Per questo post, PHPUnit/Wamp/PEAR 1 demo 0. Ovvero vado a dormire. Domani è un altro giorno! Spero di non metterci troppo a scrivere un POST “FINALE” che sveli l’arcano sull’installazione di PHPUnit su Windows Vista.













