首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pip安装uvloop会导致权限拒绝错误。

pip安装uvloop会导致权限拒绝错误。
EN

Stack Overflow用户
提问于 2020-12-22 10:39:58
回答 1查看 2.9K关注 0票数 2

我尝试将uvloop安装到CentOS 7上的Python3.9venv中。

代码语言:javascript
复制
cd ~
mkdir python_envs
cd python_envs
python -m venv test
source test/bin/activate
pip install --upgrade pip
pip install uvloop

那我就明白了:

代码语言:javascript
复制
Collecting uvloop
  Using cached uvloop-0.14.0.tar.gz (2.0 MB)
Using legacy 'setup.py install' for uvloop, since package 'wheel' is not installed.
Installing collected packages: uvloop
    Running setup.py install for uvloop ... error
    ERROR: Command errored out with exit status 1:
     command: /home/music/python_envs/test/bin/python3.9 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-85ij25up/uvloop_2c4ab2d368cc414bb626701bc788f90f/setup.py'"'"'; __file__='"'"'/tmp/pip-install-85ij25up/uvloop_2c4ab2d368cc414bb626701bc788f90f/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-l3ksyogz/install-record.txt --single-version-externally-managed --compile --install-headers /home/music/python_envs/test/include/site/python3.9/uvloop
         cwd: /tmp/pip-install-85ij25up/uvloop_2c4ab2d368cc414bb626701bc788f90f/
    Complete output (76 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.9
    creating build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/_noop.py -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/_patch.py -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/__init__.py -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/_testbase.py -> build/lib.linux-x86_64-3.9/uvloop
    running egg_info
    writing uvloop.egg-info/PKG-INFO
    writing dependency_links to uvloop.egg-info/dependency_links.txt
    writing top-level names to uvloop.egg-info/top_level.txt
    reading manifest file 'uvloop.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no previously-included files matching '*' found under directory 'vendor/libuv/.git'
    warning: no previously-included files matching '*' found under directory 'vendor/libuv/docs'
    warning: no previously-included files matching '*' found under directory 'vendor/libuv/img'
    writing manifest file 'uvloop.egg-info/SOURCES.txt'
    copying uvloop/cbhandles.pxd -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/cbhandles.pyx -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/dns.pyx -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/errors.pyx -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/loop.c -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/loop.pxd -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/loop.pyx -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/lru.pyx -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/pseudosock.pyx -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/request.pxd -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/request.pyx -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/server.pxd -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/server.pyx -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/sslproto.pxd -> build/lib.linux-x86_64-3.9/uvloop
    copying uvloop/sslproto.pyx -> build/lib.linux-x86_64-3.9/uvloop
    creating build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/async_.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/async_.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/basetransport.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/basetransport.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/check.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/check.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/handle.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/handle.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/idle.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/idle.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/pipe.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/pipe.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/poll.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/poll.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/process.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/process.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/stream.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/stream.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/streamserver.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/streamserver.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/tcp.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/tcp.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/timer.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/timer.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/udp.pxd -> build/lib.linux-x86_64-3.9/uvloop/handles
    copying uvloop/handles/udp.pyx -> build/lib.linux-x86_64-3.9/uvloop/handles
    creating build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/__init__.py -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/compat.h -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/consts.pxi -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/debug.h -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/debug.pxd -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/flowcontrol.pxd -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/fork_handler.h -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/python.pxd -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/stdlib.pxi -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/system.pxd -> build/lib.linux-x86_64-3.9/uvloop/includes
    copying uvloop/includes/uv.pxd -> build/lib.linux-x86_64-3.9/uvloop/includes
    running build_ext
    error: [Errno 13] Permission denied: './configure'
    ----------------------------------------
ERROR: Command errored out with exit status 1: /home/music/python_envs/test/bin/python3.9 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-85ij25up/uvloop_2c4ab2d368cc414bb626701bc788f90f/setup.py'"'"'; __file__='"'"'/tmp/pip-install-85ij25up/uvloop_2c4ab2d368cc414bb626701bc788f90f/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-l3ksyogz/install-record.txt --single-version-externally-managed --compile --install-headers /home/music/python_envs/test/include/site/python3.9/uvloop Check the logs for full command output.

我认为关键错误消息是error: [Errno 13] Permission denied: './configure',但我不知道这发生在哪个目录。我已经读过这个答案和一些相关的信息,但它似乎解决不了我的问题:pip安装失败: OSError:[Errno 13]目录上的权限被拒绝

  1. install in env:正如您所看到的,我在一个全新的env中这样做,但不起作用。
  2. pip install --user:不工作,我明白了:
代码语言:javascript
复制
ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.
  1. pip install --user +将include-system-site-packages = false修改为env:pyvenv.cfg中的true:可以启动安装,但返回到原权限被拒绝的问题。
  2. sudo:不安全,还会引起其他问题。我会保留这个作为最后的解决方案。
  3. chmod -R 777 test:这不是一个解决方案,只是一个测试,以确保问题不在env目录的权限上。同样的权限问题仍然会发生。我知道有一些不同的安装方法可以避免这个权限问题,但是我想知道原因,还有什么方法可以让pip install -r requirement.txt在不处理这种特殊情况的情况下正常工作呢?

更新:

就连我也是

代码语言:javascript
复制
sudo -s        # become root
source test/bin/activate
pip install uvloop

同样的问题error: [Errno 13] Permission denied: './configure'也发生了。我不知道这是怎么回事。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-25 05:22:40

您可以从这里下载环轮

然后使用pip install uvloop-XXX.whl

但是我发现没有对应于python3.9的版本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65407212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档