尝试安装 .deb 文件后无法安装软件包

尝试安装 .deb 文件后无法安装软件包

我运行的是 Ubuntu Unity 22.04,并尝试从 .deb 文件安装 Crossover。它没有成功,但现在每当我尝试从终端安装某些东西时,它都会默认尝试安装 Crossover。

以下是发生的情况的屏幕截图: 以下是发生的情况的屏幕截图。

以下是抄录:

Setting up crossover:i386 (19.0.0-1) ...
Traceback (most recent call last):
  File "/opt/cxoffice/lib/python/cxconfig.py", line 12, in <module>
    from collections import MutableMapping
ImportError: cannot import name 'MutableMapping' from 'collections' (/usr/lib/python3.10/collections/__init__.py)

在处理上述异常的过程中,又发生了另一个异常:

Traceback (most recent call last):
  File "/opt/cxoffice/bin/cxtie", line 135, in <module>
    import cxtiemain
  File "/opt/cxoffice/lib/python/cxtiemain.py", line 6, in <module>
    import c4parser
  File "/opt/cxoffice/lib/python/c4parser.py", line 10, in <module>
    import cxproduct
  File "/opt/cxoffice/lib/python/cxproduct.py", line 7, in <module>
    import cxconfig
  File "/opt/cxoffice/lib/python/cxconfig.py", line 15, in <module>
    from UserDict import DictMixin as MutableMapping
ModuleNotFoundError: No module named 'UserDict'
dpkg: error processing package crossover:i386 (--configure):
 installed crossover:i386 package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 crossover:i386
E: Sub-process /usr/bin/dpkg returned an error code (1)

我如何解决它?

答案1

这是因为 CrossOver 包尝试执行一些在 Python 3.3 中已弃用的 Python 代码函数,因此已在系统上安装的 3.10 中删除(/usr/lib/python3.10/...)。

当然,您肯定需要联系 CodeWeavers 以获取软件包的更新版本。将 Python 降级到 3.9 可能仍然是另一种选择。但请注意将来可能发生的依赖性问题。

来源:

答案2

rm -rd -f /opt/cxoffice

rm -f /var/lib/dpkg/info/crossover.postinst

apt update

然后删除二进制文件。

相关内容