Description
Je ne présenterais ni PHP, ni composer…
Versions logicielles :
- PHP :
- 6.5 : 7.1.28, 7.2.17, 7.3.4
- 6.4 : 7.0.32, 7.1.22, 7.2.10
- Composer :
- 6.5 : 1.8.3
- 6.4 : 1.6.3
Installation
Les deux “outils” sont disponibles en tant que paquets, pour l’exemple :
pkg_add -v php-7.2 composer
Après l’installation de Composer, faites une mise à jour de lui-même :
composer self-update
Configuration
De même, je ne détaillerais pas la configuration ni de PHP, ni de Composer, d’autant que par défaut pour ce dernier, il n’y a rien à faire en soit - il est bien sûr possible de configurer certaines options…
Pour information, par défaut, Composer est configuré pour être exécuté avec php-7.0 sous la 6.4, et php-7.1 sous 6.5 - qu’il installe en dépendances (avec femail*)
Le problème qui se pose est que si vous utilisez php-7.2, voire php-7.3, Composer s’exécutera avec l’environnement PHP pour lequel il est paramétré par défaut - logique, vous me direz !
Alors, comment le contraindre ?
Très facilement :
# sed -i -e "s/php-7.x/php-7.y/" "$(which composer)"
où :
7.x
est votre installation PHP par défaut,- et
7.y
la version de PHP que vous préférez utiliser, telle que 7.2, par exemple…
Pour finir, on exécute ensuite un petit diagnostic :
Code : shell
$ composer diagnose
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking pubkeys:
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0 87719BA6 8F3BB723 4E5D42D0 84A14642
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B 0C708369 153E328C AD90147D AFE50952
OK
Checking composer version: OK
Composer version: 1.8.5
PHP version: 7.2.17
PHP binary path: /usr/local/bin/php-7.2
Tous les voyants sont OK, Composer a la dernière version en cours, et il s’exécute bien avec la version de PHP désirée - (ici, dans cet exemple, la 7.2 !)
Dépannage
Error: Do not run Composer as root/super user
Et, oui, il n’est pas recommandé d'exécuter Composer avec des droits d'administrateurs - alors ne le faites pas !
Plus d’informations, sur : https://getcomposer.org/root
Error: Missing pubkey for…
Il est possible que lors du diagnostique, vous vous retrouvez avec ce message d’erreur sur fond rouge :
Checking pubkeys: FAIL
Missing pubkey for tags verification
Missing pubkey for dev verification
Run composer self-update --update-keys to set them up
Il vous dit quoi faire !!!
Donc :
Code : shell
$ composer self-update --update-keys
Open https://composer.github.io/pubkeys.html to find the latest keys
Enter Dev / Snapshot Public Key (including lines with -----):
Là, le shell reste en attente jusqu’à ce que vous lui copiez la clé demandée, que vous trouverez sur https://composer.github.io/pubkeys.html, puisqu’il a même la gentillesse de vous le dire !
Si l’entrée saisie n’est pas correcte, vous aurez un message d’erreur : Invalid input
,
il vous sera redemandé de faire la saisie !