点子安装会导致错误.我可以通过 pdb 调试它吗?


Ubuntu 16.04
Python 3.5.2

在虚拟环境中,如果我运行python,我会得到Python 3.5.2。

问题是:

(photoarchive) admin@simple_project:~/venv/photoarchive/lib/python3.5/encodings$ pip install django-crequest
Collecting django-crequest
Using cached django-crequest-2016.3.16.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-build-2qlcw5ux/django-crequest/setup.py", line 9, in <module>
license=open('LICENSE').read(),
File "/home/admin/venv/photoarchive/lib/python3.5/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 204: ordinal not in range(128)
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-2qlcw5ux/django-crequest/

好吧,pip安装毁了一切。顺便说一下,如果没有 virtualenv,这个软件包是通过 pip 安装的。

我被困住了,不知道如何应对。

我唯一能想到的就是停在 ascii.py 的那条26号线。 这似乎可以通过 pdb 实现。我要编辑它并在那里添加 pdb.set_trace((。然后保存文件。

这是个好主意吗?另一个问题:是否可以不编辑文件?

这确实看起来很奇怪。这可能是由于下载损坏(正在缓存(。要确保重新下载,请执行

pip install --no-cache-dir django-crequest

如果发生相同的错误,请尝试下载源代码并编辑setup.py

mkdir tmp
pip download django-crequest --dest=./tmp
cd tmp
tar xfz django-crequest-2016.3.16.tar.gz
cd django-crequest-2016.3.16
sed -i '9 s/^/#/' setup.py  # comments out line 9 in setup.py

现在通过编辑setup.py进行安装:

python setup.py install

最新更新