MacOS解决安装pycurl的问题 no such file or directory: ‘/usr/lib/libcurl.@libext@‘

背景

  • 芯片:MacBook Pro M3
  • Mac OS: 14.1
  • Python 2.7
  • pip==20.3.4

执行pip install pycurl==7.19.0总是报错,例如:

Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting pycurl==7.19.0
  Downloading http://mirrors.aliyun.com/pypi/packages/11/73/abcfbbb6e1dd7087fa53042c301c056c11264e8a737a4688f834162d731e/pycurl-7.19.0.tar.gz (70 kB)
     |████████████████████████████████| 70 kB 622 kB/s
Building wheels for collected packages: pycurl
  Building wheel for pycurl (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /Users/skyler/Documents/py-env/venv2.7/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-install-vkv4WA/pycurl/setup.py'"'"'; __file__='"'"'/private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-install-vkv4WA/pycurl/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-wheel-s5C8B2
       cwd: /private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-install-vkv4WA/pycurl/
  Complete output (25 lines):
  Using curl-config (libcurl 8.1.2)
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.9-x86_64-2.7
  creating build/lib.macosx-10.9-x86_64-2.7/curl
  copying python/curl/__init__.py -> build/lib.macosx-10.9-x86_64-2.7/curl
  running build_ext
  building 'pycurl' extension
  creating build/temp.macosx-10.9-x86_64-2.7
  creating build/temp.macosx-10.9-x86_64-2.7/src
  gcc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -g -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DHAVE_CURL_SSL=1 -I/Users/skyler/Documents/py-env/venv2.7/include/python2.7 -c src/pycurl.c -o build/temp.macosx-10.9-x86_64-2.7/src/pycurl.o
  src/pycurl.c:85:4: warning: "libcurl was compiled with SSL support, but configure could not determine which "    "library was used; thus no SSL crypto locking callbacks will be set, which may "    "cause random crashes on SSL requests" [-W#warnings]
  #  warning \
     ^
  src/pycurl.c:2351:9: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
      int ret;
          ^
  2 warnings generated.
  gcc -bundle -undefined dynamic_lookup -arch x86_64 -g build/temp.macosx-10.9-x86_64-2.7/src/pycurl.o -lcurl -o build/lib.macosx-10.9-x86_64-2.7/pycurl.so /usr/lib/libcurl.@libext@ @LDFLAGS@ @LIBCURL_LIBS@
  clang: error: no such file or directory: '/usr/lib/libcurl.@libext@'
  clang: error: no such file or directory: '@LDFLAGS@'
  clang: error: no such file or directory: '@LIBCURL_LIBS@'
  error: command 'gcc' failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for pycurl
  Running setup.py clean for pycurl
Failed to build pycurl
Installing collected packages: pycurl
    Running setup.py install for pycurl ... error
    ERROR: Command errored out with exit status 1:
     command: /Users/skyler/Documents/py-env/venv2.7/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-install-vkv4WA/pycurl/setup.py'"'"'; __file__='"'"'/private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-install-vkv4WA/pycurl/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-record-x0_TkQ/install-record.txt --single-version-externally-managed --compile --install-headers /Users/skyler/Documents/py-env/venv2.7/include/site/python2.7/pycurl
         cwd: /private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-install-vkv4WA/pycurl/
    Complete output (25 lines):
    Using curl-config (libcurl 8.1.2)
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.9-x86_64-2.7
    creating build/lib.macosx-10.9-x86_64-2.7/curl
    copying python/curl/__init__.py -> build/lib.macosx-10.9-x86_64-2.7/curl
    running build_ext
    building 'pycurl' extension
    creating build/temp.macosx-10.9-x86_64-2.7
    creating build/temp.macosx-10.9-x86_64-2.7/src
    gcc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -g -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DHAVE_CURL_SSL=1 -I/Users/skyler/Documents/py-env/venv2.7/include/python2.7 -c src/pycurl.c -o build/temp.macosx-10.9-x86_64-2.7/src/pycurl.o
    src/pycurl.c:85:4: warning: "libcurl was compiled with SSL support, but configure could not determine which "    "library was used; thus no SSL crypto locking callbacks will be set, which may "    "cause random crashes on SSL requests" [-W#warnings]
    #  warning \
       ^
    src/pycurl.c:2351:9: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
        int ret;
            ^
    2 warnings generated.
    gcc -bundle -undefined dynamic_lookup -arch x86_64 -g build/temp.macosx-10.9-x86_64-2.7/src/pycurl.o -lcurl -o build/lib.macosx-10.9-x86_64-2.7/pycurl.so /usr/lib/libcurl.@libext@ @LDFLAGS@ @LIBCURL_LIBS@
    clang: error: no such file or directory: '/usr/lib/libcurl.@libext@'
    clang: error: no such file or directory: '@LDFLAGS@'
    clang: error: no such file or directory: '@LIBCURL_LIBS@'
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /Users/skyler/Documents/py-env/venv2.7/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-install-vkv4WA/pycurl/setup.py'"'"'; __file__='"'"'/private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-install-vkv4WA/pycurl/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-record-x0_TkQ/install-record.txt --single-version-externally-managed --compile --install-headers /Users/skyler/Documents/py-env/venv2.7/include/site/python2.7/pycurl Check the logs for full command output.

解决方法

执行 brew install curl 。 老版本可以安装curl-openssl (Formula curl-openssl was renamed to curl.)

export PATH="$(brew --prefix curl)/bin:$PATH"
export LDFLAGS="-L$(brew --prefix curl)/lib"
export CPPFLAGS="-I$(brew --prefix curl)/include"

这样之后可以安装成功

pip install --no-cache-dir pycurl==7.19.0

Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting pycurl==7.19.0
  Downloading http://mirrors.aliyun.com/pypi/packages/11/73/abcfbbb6e1dd7087fa53042c301c056c11264e8a737a4688f834162d731e/pycurl-7.19.0.tar.gz (70 kB)
     |████████████████████████████████| 70 kB 391 kB/s
Building wheels for collected packages: pycurl
  Building wheel for pycurl (setup.py) ... done
  Created wheel for pycurl: filename=pycurl-7.19.0-cp27-cp27m-macosx_10_9_x86_64.whl size=109152 sha256=4f3f73b5d53af44bd81bcb1819b1f2bc7154807de263146c5ac4cf249a81395f
  Stored in directory: /private/var/folders/90/2z2_gp3s4z737mq6fyxsw6g80000gn/T/pip-ephem-wheel-cache-zNstBM/wheels/10/09/3a/dec6320ee0fa59e8ecb83edf2b5fba673031c6ec2df31e7344
Successfully built pycurl
Installing collected packages: pycurl
Successfully installed pycurl-7.19.0

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 18:04:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 18:04:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 18:04:02       45 阅读
  4. Python语言-面向对象

    2024-07-22 18:04:02       55 阅读

热门阅读

  1. Lianwei 安全周报|2024.07.22

    2024-07-22 18:04:02       21 阅读
  2. js弹出对话框

    2024-07-22 18:04:02       14 阅读
  3. 优先级策略:在Eureka中配置服务实例优先级

    2024-07-22 18:04:02       20 阅读
  4. L298N的输出电流与电压

    2024-07-22 18:04:02       17 阅读
  5. 基于vite + pnpm monorepo 实现一个UI组件库

    2024-07-22 18:04:02       18 阅读
  6. sqlserver15(2019)修改参数READ_COMMITTED_SNAPSHOT

    2024-07-22 18:04:02       16 阅读
  7. 黑龙江网络安全等级保护测评策略概述

    2024-07-22 18:04:02       14 阅读
  8. Hi3751V351常用命令

    2024-07-22 18:04:02       15 阅读
  9. 鸿蒙笔记--存储

    2024-07-22 18:04:02       15 阅读