Programing

작곡가 설치 오류-실제로 활성화 된 경우 ext_curl 필요

crosscheck 2020. 6. 12. 00:03
반응형

작곡가 설치 오류-실제로 활성화 된 경우 ext_curl 필요


Composer와 함께 Facebook PHP SDK를 설치하려고합니다. 이것이 내가 얻는 것입니다

$ composer install
Loading composer repositories with package information
Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

    Problem 1
        - Installation request for facebook/php-sdk dev-master -> satisfiable by facebook/php-sdk[dev-master].
        - facebook/php-sdk dev-master requires ext-curl * -> the requested PHP extension curl is missing from your system.

문제는 컬 확장이 활성화되어 있다는 것입니다 (php.ini에서 주석 처리되지 않음). 내가 실행하면 phpinfo()활성화되었다고 표시됩니다. 내가 가진 단서는 내가 실행할 때 $ php -m'컬'라인이 누락되었지만 그것에 대해 무엇을 해야할지 모른다는 것입니다.

Win8에 wamp 2.4가 있고 cmd.exe에서 composer를 실행 중입니다.


시스템에 php5-curl 라이브러리가 설치되어 있지 않기 때문에 발생합니다.

우분투에서는 간단하게 아래 라인 코드를 실행하십시오 .Xamp의 경우 Xamp 설명서를 살펴보십시오.

sudo apt-get install php5-curl

php7.0을 사용하는 사람

sudo apt-get install php7.0-curl

php7.1를 사용하는 사람들을 위해

sudo apt-get install php7.1-curl

php7.2를 사용하는 사람들을 위해

sudo apt-get install php7.2-curl

또는 아래 명령을 실행하여 버전별로 설치하십시오.

sudo apt-get install php-curl

이것은 나를 위해 일했다 : http://ubuntuforums.org/showthread.php?t=1519176

명령을 사용하여 작곡가를 설치 한 후 curl -sS https://getcomposer.org/installer | php바로 실행 sudo apt-get update한 후 다시 설치 곱슬 sudo apt-get install php5-curl. 그런 다음 composer의 설치 프로세스가 작동 php composer.phar install해야 composer.json 파일에 나열된 종속성을 얻을 수 있습니다.


Danack이 의견에서 말했듯이 2 개의 php.ini 파일이 있습니다. 웹 서버에서 사용하는 php.ini 인 Apache 폴더의 curl 확장 줄을 주석 처리하지 않았습니다.

반면, Composer는 완전히 다른 이야기 인 콘솔에 PHP를 사용합니다. 해당 프로그램의 Php.ini 파일은 Apache 폴더의 파일이 아니지만 PHP 폴더에 있으며 행의 주석을 제거해야했습니다. 그런 다음 설치를 다시 실행했는데 문제가 없었습니다.


php7에서 다음을 실행하십시오.

> sudo apt-get install php-curl
> sudo apt-get install php-mbstring

모든 누락 된 확장에 대해 그때:

> sudo apt-get update

그리고 마지막으로 (프로젝트의 루트 폴더에) :

> composer install

Dropbox SDK를 설치하려고 할 때 같은 문제가 발생했습니다.

CURL은 실제로 내 시스템에서 활성화되었지만 wamp \ bin \ apache 폴더의 php.ini가 의미합니다.

wamp \ bin \ php에있는 php.ini를 수동으로 편집하고 extension=php_curl.dll줄을 주석 해제하고 Wamp를 다시 시작하면 완벽하게 작동했습니다.

왜 그 2 개의 php.ini가 있고 오직 하나만 사용됩니까?

누군가에게 도움이되기를 바랍니다!


PHP5.6으로 업그레이드 한 후이 문제가 발생했습니다. 내 대답은 내가 달리기를 제외하고 Adriano와 매우 유사합니다.

sudo apt-get install php5.6-curl

"5.6"에 주목하십시오. php5-curl을 설치해도 효과가 없었습니다.


https://github.com/composer/composer/issues/2119 에 따르면 composer.json확장 기능을 제공한다는 사실로 로컬 확장 할 수 있습니다 (실제로는 그렇지 않습니다-공개적으로 패키지를 게시해서는 안됩니다) 내부적으로 사용하십시오.


작곡가가 일부 종속성을 설치하려고 할 때 비슷한 문제가 발생했습니다. 내 Wamp 버전과 함께 제공된 .dll은 64 비트 Windows와 충돌한다고 생각합니다.

이 URL은 curl dll을 수정했습니다 : http://www.anindya.com/php-5-4-3-and-php-5-3-13-x64-64-bit-for-windows/

고정 컬 확장 기능 섹션으로 스크롤하십시오.

"php_curl-5.4.3-VC9-x64.zip"을 다운로드했습니다. 방금 zip 파일에 있던 dll로 wamp / bin / php / php5.4.3 / ext 디렉토리 내부의 dll을 덮어 쓰고 composer가 다시 작동했습니다.

I am running 64 bit Windows 8.

Hope this helps.


Enable in php 7 try below command

sudo apt-get install php7.0-curl

I have Archlinux with php 7.2, which has Curl integrated, so no amount of configuration voodoo would make Composer see ext-curl, that PHP could see and work with happily. Work around is to use Composer with --ignore-platform-reqs.

eg composer update --ignore-platform-reqs

Reference = https://github.com/composer/composer/issues/1426


For anyone who encounters this issue on Windows i couldn't find my answer on google at all. I just tried running composer require ext-curl and this worked. Alternatively add the following in your composer.json file:

"require": {
"ext-curl": "^7.3"
}

if use wamp go to:

wamp\bin\php\php.5.x.x\php.ini find: ;extension=php_curl.dll remove (;)


In my case I moved from PHP5 to PHP7 and I ve got this error, Simply go to your /bin/php/php7/php.ini , then uncomment extension=php_curl.dll and restart your server, re-run your composer install.

참고URL : https://stackoverflow.com/questions/19335305/composer-install-error-requires-ext-curl-when-its-actually-enabled

반응형