web-dev-qa-db-ja.com

Ubuntuにunrardllをpipインストールするには<unrar / dll.hpp>が必要です

Ubuntu 18.04にアップグレードした後、Calibreは.cbrファイルを開くときに次のエラーを表示します。

calibre, version 3.21.0
...
    File "/usr/lib/calibre/calibre/utils/unrar.py", line 53, in extract
       from unrardll import extract
ImportError: No module named unrardll

そして...

#> Sudo pip install unrardll

.。

src/unrardll/wrapper.cpp:19:10: fatal error: unrar/dll.hpp: No such file or directory
#include <unrar/dll.hpp>
      ^~~~~~~~~~~~~~~
compilation terminated

うーん...

#> dpkg -S unrar/dll.hpp
dpkg-query: no path found matching pattern *unrar/dll.hpp*

Ubuntu18.04にunrardll Pythonモジュールをインストールするにはどうすればよいですか?

4
spraff

unrarソース、開発ファイル、ライブラリはUbuntu用にパッケージ化されていないため、入手して自分でインストールする必要があります...

"extrasに"UnRAR source "のダウンロードがあります-) "rarlab.comのページ -以下のwgetでこのリンクを使用してください。

ライブラリをビルドしてインストールしてから、--global-optionpipを使用してライブラリをヘッダーにポイントする必要があります。

以下に従ってください:

apt update
apt install -y build-essential python-pip wget
mkdir unrarsrc
cd unrarsrc
wget https://rarlab.com/rar/unrarsrc-5.6.8.tar.gz
tar -xvf unrarsrc-5.6.8.tar.gz
make -C unrar lib
Sudo make -C unrar install-lib
Sudo pip install --global-option=build_ext --global-option="-I$(pwd)" unrardll
$ python
Python 2.7.15rc1 (default, Apr 15 2018, 21:51:34)
[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import unrardll
>>>

これを行った後、UnRARライブラリはあなたの管理下にあるので、あなたがそれを更新する責任があることに注意してください。 unrarユーティリティは引き続きパッケージマネージャーによって提供されるため、通常どおり更新されます。


これに必要なパッケージを提供するPPAがありますが、サポートされているUbuntuの最新バージョンは「SaucySalamander」(13.10)、最終更新〜 5年前にunrarv5.0.14で。

https://launchpad.net/~trinitronx/+archive/ubuntu/unrar-nonfree

3
Attie