1

ツイスト pip インストールをインストールしようとしています

これはdjango-channelsプロジェクト用であり、次のエラーの問題が発生しています

Exception:
Traceback (most recent call last):
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/tarfile.py", line 1655, in bz2open
    import bz2
  File "/usr/local/lib/python3.5/bz2.py", line 22, in <module>
    from _bz2 import BZ2Compressor, BZ2Decompressor
ImportError: No module named '_bz2'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/petarp/.virtualenvs/CloneFromGitHub/lib/python3.5/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/site-packages/pip/commands/install.py", line 310, in run
    wb.build(autobuilding=True)
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/site-packages/pip/wheel.py", line 750, in build
    self.requirement_set.prepare_files(self.finder)
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/site-packages/pip/req/req_set.py", line 370, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/site-packages/pip/req/req_set.py", line 587, in _prepare_file
    session=self.session, hashes=hashes)
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/site-packages/pip/download.py", line 810, in unpack_url
    hashes=hashes
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/site-packages/pip/download.py", line 653, in unpack_http_url
    unpack_file(from_path, location, content_type, link)
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/site-packages/pip/utils/__init__.py", line 605, in unpack_file
    untar_file(filename, location)
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/site-packages/pip/utils/__init__.py", line 538, in untar_file
    tar = tarfile.open(filename, mode)
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/tarfile.py", line 1580, in open
    return func(name, filemode, fileobj, **kwargs)
  File "/home/petarp/.virtualenvs/ErasmusCloneFromGitHub/lib/python3.5/tarfile.py", line 1657, in bz2open
    raise CompressionError("bz2 module is not available")
tarfile.CompressionError: bz2 module is not available

明らかにbz2モジュールが不足しているため、手動でインストールしようとしましたが、うまくいきませんでしたpython 3.5。どうすればこれを解決できますか?

私は@ e4c5が提案したことをしましたがpython3.5.1、出力は

➜  ~ python3.5                               
Python 3.5.1 (default, Apr 19 2016, 22:45:11) 
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import bz2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.5/bz2.py", line 22, in <module>
    from _bz2 import BZ2Compressor, BZ2Decompressor
ImportError: No module named '_bz2'
>>> 
[3]  + 18945 suspended  python3.5
➜  ~ dpkg -S /usr/local/lib/python3.5/bz2.py
dpkg-query: no path found matching pattern /usr/local/lib/python3.5/bz2.py

私はUbuntu 14.04 LTSを使用しており、ソースからpython 3.5をインストールしました。

4

3 に答える 3

4

import bz2私のpython 3.4のインストールでは問題がないようです。だから私はやった

import bz2
print (bz2.__file__)

そして、それがその場所にあることがわかりまし/usr/lib/python3.4/bz2.py

dpkg -S /usr/lib/python3.4/bz2.py

これにより、次のことがわかります。

libpython3.4-stdlib:amd64: /usr/lib/python3.4/bz2.py

したがって、次のコマンドでこれを修正できるはずです。

apt-get install libpython3.4-stdlib

アップデート:

ソースから python 3.5 をコンパイルした場合、bz2 がコンパイルされていない可能性が非常に高いです。最初に実行して再インストールしてください。

./configure --with-libs='bzip' 

同じことがpython 3.6にも当てはまります。これはおそらく、他の依存関係の欠落について不平を言うことに注意してください。すべてがカバーされるまで、不足している依存関係を 1 つずつインストールする必要があります。

于 2016-07-29T03:33:50.750 に答える
0

_を削除してインポートを変更することで解決できました

from bz2 import BZ2Compressor, BZ2Decompressor
于 2018-09-06T17:30:34.350 に答える