2017-10-19 4 views
1

Ma configuration: Mac OSX El Capitan 10.11.6, PHP 7.0.24-1 + ubuntu14.04.1, Version PEAR: 1.10.5, je travaille sur une construction wordpress locale en utilisant vagrant/virtualbox (vvv).Problèmes d'installation de Pear et PHP_CodeSniffer: impossible d'utiliser phpcs depuis la ligne de commande

Je suis nouveau sur pear et php_codesniffer et je n'arrive pas à faire fonctionner les commandes phpcs. J'ai essayé d'installer PHP_CodeSniffer en utilisant pear:

Mon premier problème est lors de la tentative d'installation de PEAR. Je suis les instructions: $ curl -O https://pear.php.net/go-pear.phar & $ php -d detect_unicode=0 go-pear.phar. Ensuite, lorsque je tente de configurer la base d'installation dans/usr/local/poire et Binaires répertoire/usr/local/bin, je reçois l'erreur suivante: Unable to create PHP code directory ($php_dir) /usr/local/pear/share/pear. Run this script as root or pick another location.

J'ai trouvé d'autres avec la même erreur et ai vu cette solution : sudo php /usr/lib/php/install-pear-nozlib.phar -d /usr/local/lib/php -b /usr/local/bin Mais ce qui a incité une erreur: Could not open input file: /usr/lib/php/install-pear-nozlib.phar

J'ai ensuite essayé de configurer la poire en utilisant:/home/errante/poire. Je suis en mesure d'installer PHP_CodeSniffer, quand je l'utilise pear list, je peux voir PHP_CodeSniffer:

errante @ VVV: ~ liste poire $ installé les paquets, le canal pear.php.net: Paquet État Version Archive_Tar 1.4.3 stable Console_Getopt 1.4.1 stable PHP_CodeSniffer 3.1.1 stable Structures_Graph 1.1.1 stable XML_Util stable 1.4.2

quand je lance phpcs, je reçois le message suivant: le programme 'phpcs' est pas encore installé . Pour exécuter 'phpcs', demandez à votre administrateur d'installer le paquet 'php-codesniffer'

J'ai trouvé ce post: qui m'a demandé: sudo pear config-set php_bin/usr/bin/php, puis désinstallez et réinstallez codesniffer . Tout semble fonctionner correctement, mais quand j'essaie quel phpcs, il n'y a rien.

J'ai installé et désinstallé plusieurs fois poire. Lorsque j'essaie de désinstaller, il est dit que pear n'est pas installé, mais quand je fais which pear, je reçois usr/bin/pear. C'est un peu le bordel, tout conseil serait grandement apprécié.

+0

PEAR est un produit obsolète depuis de nombreuses années. Vous devriez utiliser le compositeur de nos jours: 'composer require squizlabs/php_codesniffer --dev'. –

+0

@ Tomáš Votruba, j'ai suivi vos conseils et utilisé le compositeur. Je suis maintenant capable d'exécuter la commande ./vendor/bin/phpcs. Merci pour le conseil. – carlarenee

+0

Excellent travail! C'est génial, je vais le transformer en réponse donc c'est plus facile à trouver. –

Répondre

1

PEAR est sortie de la date à 2017.

Vous devez utiliser composer aujourd'hui à la place:

composer require squizlabs/php_codesniffer --dev 

Lancez ensuite comme:

vendor/bin/phpcs ... 

Pour obtenir plus de détails sur PEAR timeout, il y a RFC about PEAR removal for PHP 8.