Instalación de PEAR y PHPUnit con xampp


Estoy tratando de poner en marcha PHPUnit los siguientes son los pasos que estoy siguiendo actualmente:

### Install new PEAR Version needed for PHPUnit 3.X
### Download:  http://pear.php.net/go-pear.phar Save it under C:\xampp\php

Open a command prompt and go to C:\xampp\php
Type "php go-pear.phar" (Installs new PEAR)
Type "pear update-channels" (updates channel definitions)
Type "pear upgrade --alldeps" (upgrades all existing packages and pear)
Type "pear channel-discover components.ez.no" (this is needed for PHPUnit)
Type "pear channel-discover pear.symfony-project.com" (also needed by PHPUnit)
Type "pear channel-discover pear.phpunit.de" (This IS phpunit)
Type "pear install --alldeps phpunit/PHPUnit" (installs PHPUnit and all dependencies)

Esto funciona hasta el punto en que tengo que pear upgrade --alldeps después de descargar todos los bits que necesita obtengo: #

ERROR: failed to mkdir C:\php\pear\data\Auth\Auth\Frontend
ERROR: failed to mkdir C:\php\pear\docs\Benchmark\doc
ERROR: failed to mkdir C:\php\pear\data\Cache\Container
ERROR: failed to mkdir C:\php\pear\docs\Cache_Lite\docs
ERROR: failed to mkdir C:\php\pear\docs\Calendar\docs\examples
ERROR: failed to mkdir C:\php\pear\docs\Config\docs
.....

Mi directorio PHP está instalado bajo C:\xampp\php

¿Qué necesito cambiar para que sepa el lugar correcto para agregar estos directorios/ archivos?

Gracias

Author: Lizard, 2011-04-27

8 answers

Parece que el problema no es con PHPUnit sino con su instalación de pear en general.

El usuario con el que ejecuta la instalación no tiene los privilegios para crear las carpetas necesarias.

Ether corrige esos permisos o inicia el mensaje de cmd con privilegios de administrador (windowsbutton e introduce "cmd" y luego strg+shift+introduzca ) y vuelva a ejecutar los comandos.

 24
Author: edorian,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-11-25 08:22:46

Para instalar en D:\xampp\php, establezca las siguientes rutas de directorio usando el comando pear config-set

D:
cd D:\xampp\php
pear config-set doc_dir d:\xampp\php\pear\docs
pear config-set cfg_dir d:\xampp\php\pear\cfg
pear config-set data_dir d:\xampp\php\pear\data
pear config-set cache_dir d:\xampp\php\pear\cache
pear config-set download_dir d:\xampp\php\pear\download
pear config-set temp_dir d:\xampp\php\pear\temp
pear config-set test_dir d:\xampp\php\pear\tests
pear config-set www_dir d:\xampp\php\pear\www
 29
Author: Alphonse,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-11-23 17:16:51

Esta es una solución para un problema similar instalar propel prop en xampp. Por defecto, pear intenta instalar en c:\php\pear\data, y esta carpeta no existe, porque pear está en c:\xampp\php\pear.

Mostrar configuración de pera:

pear config-show
...
pear config-get data_dir
c:\php\pear\data

Cambie la configuración de pera a:

pear config-set data_dir c:\xampp\php\pear\data

Espero que esto sea útil ;)

 9
Author: aris,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-06-24 20:20:50

Si está en Widows 8, asegúrese de abrir una ventana de comandos como administrador, de lo contrario la creación de dir será rechazada silenciosamente por el sistema operativo.

 5
Author: Jean-Pierre Schnyder,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-11 17:54:03

Pude conseguir que pear (y posteriormente, phpunit) funcionara creando un enlace simbólico en C:\ que apunta al directorio de instalación de xamp php. Eso hace que todo lo que espera que php esté en C:\php feliz, sin romper nada que esperara que php estuviera en xampp:

En cmd.exe, escribí:

C:\Windows>cd \
C:\>junction php C:\path\to\xampp\php

He actualizado mi php.ini a utilizar C:\php como la ubicación para php. Entonces instalé pear (como una instalación local, no como un sistema). Una vez instalada la pera, la instalación de phpunit fue simple:

C:\>pear channel-discover components.ez.no
C:\>pear channel-discover pear.phpunit.de
C:\>pear channel-discover pear.symfony-project.com

Y finalmente,

C:\>pear install --alldeps phpunit/PHPUnit
 3
Author: Daniel Miladinov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 11:33:19

Esto puede ayudar a seguir el siguiente enlace: http://forum.kohanaframework.org/discussion/7346/installing-phpunit-on-windows-xampp/p1

  1. Abra un símbolo del sistema y vaya a C:\xampp\php
  2. Escriba "pear update-channels" (actualiza las definiciones de canales)
  3. Escriba "pear upgrade" (actualiza todos los paquetes existentes y pear)
  4. Tipo "canal pera-descubrir components.ez.no" (esto es necesario para PHPUnit)
  5. Tipo "canal pera-descubrir pear.symfony-project.com" (también necesario por PHPUnit)
  6. Tipo "canal pera-descubrir pear.phpunit.de" (Esto ES phpunit)
  7. Escriba "pear install all alldeps phpunit / PHPUnit" (instala PHPUnit y todas las dependencias)
 3
Author: Sam,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-12-24 12:07:52

Es posible Que desee agregar

Esto resulta en

php go-pear.phar
pear clear-cache 
pear update-channels
pear upgrade --alldeps -f 
pear channel-discover pear.phpunit.de
pear channel-discover pear.symfony-project.com
pear channel-discover components.ez.no
pear config-set preferred_state beta
pear install --onlyreqdeps phpunit/PHPUnit
 2
Author: SunnyRed,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-12 20:28:43

Ya no se puede instalar PHPUnit a través de PEAR https://stackoverflow.com/a/28457160/1783439

PHPUnit ahora viene como parte de XAMPP. Lo puedes encontrar aquí: C:\xampp\php.

En el símbolo del sistema:

cd c:\xampp\php
phpunit
 0
Author: nu everest,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:03:09