warning - php install pear
¿Cómo instalo PHPUnit correctamente con PEAR? (8)
Tuve que desinstalar y reinstalar una versión más nueva de PHPUnit siguiendo estas instrucciones . Ahora cuando estoy lanzando esta línea
sudo pear install --alldeps phpunit/PHPUnit
Veo un mensaje de error, que se ve así.
Unknown remote channel: pear.symfony.com
phpunit/PHPUnit requires package "channel://pear.symfony.com/Yaml" (version >= 2.1.0)
No valid packages found
Si instalo solo Yaml al iniciar
sudo pear install symfony/YAML
se instalará una versión anterior (1.0.6) que no cumpla con la dependencia de PHPUnit. ¿Cómo puedo resolver esto?
El proceso mencionado por PutzKipa funciona, sin embargo, es posible que necesite privilegios de superusuario. Para ubuntu agrega sudo antes de cada comando.
La forma más fácil de obtener PHPUnit en Ubuntu, Debian, Fedora o OpenSUSE es descargar un archivo PHP (PHAR) que tiene todas las dependencias necesarias (así como algunas opcionales) de PHPUnit incluidas en un único archivo.
Abra la terminal y escriba:
wget https://phar.phpunit.de/phpunit.phar # download the PHP Archive (PHAR) file
chmod +x phpunit.phar
sudo mv phpunit.phar /usr/local/bin/phpunit
Hay muchas versiones diferentes de phpunit.phar en https://phar.phpunit.de/ . Si usa el primer comando, seleccionará y descargará la última versión.
Nota: La ruta /usr/local/bin/
en el último comando es correcta para las distribuciones de Ubuntu, Debian, Fedora y OpenSUSE y también para otras distribuciones de Linux que tienen un directorio /usr/local/bin/
.
Referencia: ¿Qué es / usr / local / bin? Lo encontré en una instalación de script para Applescript pero me gustaría saber más
Primero: locate pear
puede tener múltiples versiones instaladas y esto podría ser un problema.
En el trabajo, tenemos algo así en nuestra intranet:
sudo [your pear install] channel-update pear.php.net
sudo [your pear install] upgrade pear
sudo [your pear install] channel-discover pear.phpunit.de
sudo [your pear install] install --alldeps phpunit/PHPUnit
Sé que hay una manera más automática de instalarlo usando: go-pear ( http://pear.php.net/manual/en/installation.getting.php )
Sin embargo, si ya tienes otra instalación de pera, se arruinará por completo y pasarás bastante tiempo intentando arreglarla. Creo que el mayor obstáculo es poder decirles a todas las bibliotecas dónde se encuentran.
Siguiendo a Plínio César, lo resolví finalmente, pero con una ligera variación:
Primero hice un "sudo apt-get remove phpunit" para eliminar la instalación defectuosa. Luego, usando pear para hacer la instalación de phpunit:
sudo pear install pear.symfony.com/Yaml
canal de sudo pear: descubre pear.phpunit.de
configuración de configuración de sudo pear auto_discover 1
Instalación de sudo pear --alldeps pear.phpunit.de/PHPUnit
Gracias Plinio Cesar !!!
También tuve este mensaje de error:
Canal remoto desconocido: pear.symfony.com
Resuelto creando un alias:
pear channel-alias pear.symfony-project.com pear.symfony.com
y entonces
channel-discover pear.symfony-project.com
sudo pear channel-discover components.ez.no
sudo pear update-channels
sudo pear upgrade-all
sudo pear install --force --alldeps phpunit/PHPUnit
Tuve el mismo problema al actualizar mi phpunit.
Esto resolvió el problema:
pear channel-discover pear.symfony.com
pear install pear.symfony.com/Yaml
Entonces corre:
pear install --alldeps pear.phpunit.de/PHPUnit
OBS: Creo que la pear install pear.symfony.com/Yaml
no es necesaria. Solo lo estoy publicando porque es exactamente la forma en que resolví mi problema.
Use esto, como se describe en los documentos de PHPUnit : (no sé qué significa sudo, así es como lo hago en una PC con Windows):
pear config-set auto_discover 1
pear install pear.phpunit.de/PHPUnit
sudo pear install -a phpunit
sudo pear channel-discover pear.phpunit.de
Tuve un problema similar al quejarse sobre "Canal remoto desconocido: pear.symfony.com". tenía que hacer (sin sudo, recibí un error raro sobre no puedo abrir un archivo)
sudo pear channel-discover pear.symfony.com
entonces
sudo pear install phpunit/PHPUnit
Ahora puedo ver phpunit en mi / usr / bin