programing

pycurl 설치 시 "curl-config를 실행할 수 없습니다: [Errno 2] 해당 파일 또는 디렉토리가 없습니다"

bestcode 2022. 9. 8. 22:17
반응형

pycurl 설치 시 "curl-config를 실행할 수 없습니다: [Errno 2] 해당 파일 또는 디렉토리가 없습니다"

다음을 통해 pycurl을 설치하려고 합니다.

sudo pip install pycurl

정상적으로 다운로드 되었습니다만, setup.py 를 실행하면, 다음의 트레이스 백이 표시됩니다.

Downloading/unpacking pycurl
  Running setup.py egg_info for package pycurl
    Traceback (most recent call last):
      File "<string>", line 16, in <module>
      File "/tmp/pip-build-root/pycurl/setup.py", line 563, in <module>
        ext = get_extension()
      File "/tmp/pip-build-root/pycurl/setup.py", line 368, in get_extension
        ext_config = ExtensionConfiguration()
      File "/tmp/pip-build-root/pycurl/setup.py", line 65, in __init__
        self.configure()
      File "/tmp/pip-build-root/pycurl/setup.py", line 100, in configure_unix
        raise ConfigurationError(msg)
    __main__.ConfigurationError: Could not run curl-config: [Errno 2] No such file or directory
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):

  File "<string>", line 16, in <module>

  File "/tmp/pip-build-root/pycurl/setup.py", line 563, in <module>

    ext = get_extension()

  File "/tmp/pip-build-root/pycurl/setup.py", line 368, in get_extension

    ext_config = ExtensionConfiguration()

  File "/tmp/pip-build-root/pycurl/setup.py", line 65, in __init__

    self.configure()

  File "/tmp/pip-build-root/pycurl/setup.py", line 100, in configure_unix

    raise ConfigurationError(msg)

__main__.ConfigurationError: Could not run curl-config: [Errno 2] No such file or directory

왜 이런 일이 일어나는지, 어떻게 대처해야 하는지

Debian에서는 이것을 수정하기 위해 다음과 같은 패키지가 필요했습니다.

sudo apt install libcurl4-openssl-dev libssl-dev

와 마찬가지로yum패키지 매니저

yum install libcurl-devel

사용하시는 경우dnf,사용하다

dnf install libcurl-devel

제 경우, 이것으로 문제가 해결되었습니다.

sudo apt-get install libssl-dev libcurl4-openssl-dev python-dev

여기서 설명한 바와 같이

Alpine Linux에서는 다음 작업을 수행해야 합니다.

apk add curl-dev python3-dev libressl-dev

Ubuntu 18.04에서도 @Michael Rice가 제공하는 동일한 솔루션

Ubuntu 18.04 LTS

sudo apt install libcurl4-openssl-dev libssl-dev

Al은 Michael의 답변에 언급되어 있다고 생각했지만 사용하기 쉽도록 하이라이트를 생각했다.

Ubuntu에서 Sinken 2.0.3을 기동하려고 할 때 같은 문제가 발생했습니다.최종적으로 완전 언인스톨을 실시해, Synken을 재인스톨 했습니다.pip -v청소할 때 다음과 같은 내용이 기재되어 있습니다.

Warning: missing python-pycurl lib, you MUST install it before launch the shinken daemons

를 사용하여 설치했습니다.apt-get모든 브로커가 예상대로 기동했습니다.-)

이것으로 Ubuntu 14.04의 문제가 해결되었습니다.

apt-get install libcurl4-gnutls-dev

엘도스의 대답 외에 나는 또한 필요한 것이 있었다.gcc센트로OS 7:

yum install libcurl-devel gcc

OpenSUSE의 경우:

zypper in libcurl-devel 

저 같은 경우는 같은 에러 메세지가 계속 나오고 있습니다.나는 중절모를 쓴다.다음 방법으로 해결했습니다.

sudo dnf install pycurl

이것은 내가 작동하는데 필요한 모든 것을 설치했다.

Mac에서 이 문제가 발생했는데, 이 문제는openssl필요한 것보다 오래된 버전의 패키지pycurl.pycurlopenssl이 아닌 다른 SSL 라이브러리를 사용할 수 있습니다.사용 중인 SSL 라이브러리를 확인하고 문제를 해결할 가능성이 높으므로 업데이트합니다.

이 문제는 다음 방법으로 해결했습니다.

  • 입니다.brew upgrade
  • 최신 다운로드pycurl-x.y.z.tar.gzhttp://pycurl.io/ 에서
  • 위의 패키지를 추출하여 디렉토리로 변경합니다.
  • 뛰었다python setup.py --with-openssl installopenssl은 제가 설치한 라이브러리이기 때문입니다.ssl 라이브러리의 경우 다음 중 하나를 수행합니다.gnutls또는nss그 후, 를 사용할 필요가 있습니다.--with-gnutls또는--with-nss따라서.github 저장소에서 추가 설치 정보를 찾을 수 있습니다.

nodejs 를 사용하고 있는 경우는, (쓰기시에) libssl 1.0.* 에 의존하기 때문에, 다른 SSL 라이브러리를 인스톨 하면 nodejs 의 인스톨이 중단되는 것에 주의해 주세요.

다른 SSL 라이브러리를 설치하는 대체 솔루션은 다음 답변에 게재된 것입니다.https://stackoverflow.com/a/59927568/13564342 는 libcurl4-gnutls-dev 를 대신 설치합니다.

sudo apt install libcurl4-gnutls-dev

다음 솔루션에서 설치 중 오류가 발생할 경우,

sudo apt install libcurl4-openssl-dev libssl-dev

다음으로 먼저 Linux OS를 업데이트해 보겠습니다.

sudo apt update

언급URL : https://stackoverflow.com/questions/23937933/could-not-run-curl-config-errno-2-no-such-file-or-directory-when-installing

반응형