/usr/local/bin에 작곡가를 설치했지만 전역적이지 않았습니다.

/usr/local/bin에 작곡가를 설치했지만 전역적이지 않았습니다.

우분투 18.04.6 LTS를 실행 중입니다.

Composer를 설치해야 하므로 다음 명령을 사용하여 설치했습니다.

sudo apt-get install composer

하지만 이렇게 하면 사용할 때 다음과 같은 오류가 발생하는 작곡가 버전이 설치됩니다.

Fatal error: Uncaught ArgumentCountError: array_merge() does not accept unknown named par ameters in /usr/share/php/Symfony/Component/Console/Descriptor/TextDescriptor.php:205 ubuntu

작곡가 github 노트에서는 이 오류가 수정되었다고 제안했지만 온라인에서 찾을 수 있는 실제 해결책 없이 계속 오류가 발생했습니다.

그래서 다음을 제거했습니다.

sudo apt-get purge --auto-remove composer

마침내 다음 대체 방법을 사용하여 설치하여 문제를 해결했습니다.

curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

모든 것이 올바르게 설정되었다고 말했지만 Composer를 /usr/local/bin에 배치했음에도 불구하고 여전히 전역적으로 실행되지 않았습니다.

그래서 나는 그것을 가지고 놀기 시작했습니다. AWS 인스턴스를 중지했다가 다시 시작하고 위의 대체 설치 명령(composer-setup.php)을 다시 실행했으며 이제 작곡가가 전역적으로 작동합니다. 다시 대체 설치 방법을 사용하여 전역적으로 실행해 보았는데 제대로 작동했습니다.

이제 작곡가는 전 세계적으로 작업하고 있으며 치명적인 오류는 없습니다.

Composer가 처음에 /usr/local/bin에 배치되었음에도 불구하고 전역적으로 실행되지 않았다가 마침내 전역적으로 작동하기 시작한 이유에 대한 가설을 갖고 있는 사람이 있습니까? Ubuntu를 사용하여 AWS 인스턴스를 중지하고 시작하면 문제가 해결될 수 있습니까? 그렇지 않다면 실제로 문제를 해결한 방법은 무엇이며 애초에 전 세계적으로 작동하지 않는 이유는 무엇입니까?

관련 정보