Calibre 不再工作

Calibre 不再工作

Calibre 最近停止工作。已尝试卸载并重新安装。

当我打开终端并调用时,$calibre我收到以下错误消息:

Traceback (most recent call last):
  File "/usr/bin/calibre", line 20, in <module>
    sys.exit(calibre())
  File "/usr/lib/calibre/calibre/gui_launch.py", line 73, in calibre
    main(args)
  File "/usr/lib/calibre/calibre/gui2/main.py", line 543, in main
    listener = create_listener()
  File "/usr/lib/calibre/calibre/gui2/main.py", line 514, in create_listener
    return Listener(address=gui_socket_address())
  File "/usr/lib/calibre/calibre/utils/ipc/server.py", line 110, in __init__
    self._listener._unlink.cancel()
AttributeError: 'NoneType' object has no attribute 'cancel'

我是否需要安装 sudo apt install 没有得到的一些依赖项?我尝试通过命令行和软件安装程序/更新程序 GUI 进行安装。

我使用的是 Ubuntu 20.04.1 LTS 版本。我确保我的软件总体上也是最新的。

答案1

不幸的是,目前 20.04 仓库中的 Calibre 版本是 4.99,不适用于 Python 3。要使 4.99 正常工作,你必须自己修补文件,如错误中所示https://bugs.launchpad.net/ubuntu/+source/calibre/+bug/1898904或者您可以从其他存储库下载。无论哪种方式,Canonical 尚未在官方存储库中修补 4.99 以与 20.04 兼容。

另外,引用 Calibre 自己的话:

请不要使用发行版提供的 calibre 包,因为它们通常有缺陷/过时。请改用下面描述的二进制安装。

您可以从以下位置下载https://calibre-ebook.com/download_linux

您也可以从该站点运行命令来安装它(实际上安装起来更容易):

sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin

我已将上述命令添加到名为的脚本中install_calibre,以便我可以随时运行它来将我的 Calibre 更新到最新版本。

希望这可以帮助!

答案2

要解决这个问题,没有必要放弃 Calibre 4.99。崩溃的原因记录在错误 #1898904,可以用单行补丁. 要手动应用补丁:

  • 打开终端
  • 类型:sudo gedit /usr/lib/calibre/calibre/utils/ipc/server.py
  • 在 Gedit 中,转到第 110 行
  • 更改行:
                self._listener._unlink.cancel()
    
  • 到:
                if self._listener._unlink is not None:
                    self._listener._unlink.cancel()
    
  • 保存并关闭 Gedit

这个改变会在 Calibre 更新的时候被覆盖,但是当然这没关系因为这个 bug 已经在 Calibre 的下一个版本中被修复了。

答案3

抱歉打扰了,这可能不是理想的解决方法,但可能是临时解决方案。我在 Ubuntu 20.04 中也遇到了同样的问题,我决定安装 flathub 版本,到目前为止它运行良好。

https://flathub.org/apps/details/com.calibre_ebook.calibre

答案4

https://download.calibre-ebook.com/4.html

转到此站点并下载以前的版本。提取文件并运行 Calibre 文件(没有扩展名),只需双击即可。

相关内容