tar cfJ control.tar.xz control
ar rcs ../oda-without-qt-default.deb debian-binary control.tar.xz data.tar.xz
cd ..
sudo dpkg -i oda-without-qt-default.deb
#!/bin/sh
read -p "[Warning] This script will modify all the debian files in the current directory. Continue (y/n)? " reply
echo
if [ "$reply" = "y" ]; then
for deb_file in *.deb
do
ar -x $deb_file
tar -xf control.tar.gz
sed -i 's/qt5-default, //g' control
tar -cf control.tar.gz control
ar -rcs $deb_file debian-binary control.tar.gz data.tar.gz
rm control control.tar.gz data.tar.gz debian-binary md5sums shlibs
done
fi
21.04 基于 Debian Bullseye,它在存储库中没有
qt5-default
软件包。我向启动板报告了一个关于丢失包的错误。qt5-default
有一种方法是安装包的所有依赖项
qt5-defalt
然后尝试编译您的应用程序。
如果您要从第三方安装一些需要
qt5-default
在 Ubuntu 21.04(或更新版本)上安装的软件包,那么您可以使用以下命令创建假软件包:享受。
但是 IMO 更好的方法是安装 Ubuntu 20.04 LTS,而不是再过 4 年没有问题,因为它需要安装
qt5-default
包。这解释了它
qt5-default
已经过时了,这就是它被删除的原因。在 Ubuntu 21.04 上解决这个问题的两种方法
快速破解
qt5-default
可以在没有依赖项的情况下安装软件包:这将安装软件包。解决方案并不完美。
apt
知道缺少的依赖项,例如,如果您进行升级,它将删除该软件包。sudo apt -f install
将删除包。但是,如果您只是想尝试该应用程序,这没关系。长期解决方案:更改包依赖项
这并不容易,但它消除了
qt5-default
依赖性。我将在
ODADrawingsExplorer_QT5_lnxX64_7.2dll_22.5.deb
此处使用该软件包,但这适用于任何其他软件包。打开包装:
编辑
control
文件并从or列表中删除qt5-default
依赖项。Pre-Depends
Depends
打包:
您可以检查依赖项是否正常
sudo apt -f install
。包不会被删除。qt5-default
qtbase-opensource-src
已在 Debian 版本的源代码包中删除5.15.1+dfsg-2
。长毛在5.15.2+dfsg-5
开发周期中自动同步。如果不手动重新编译包,就无法在包中“返回”
qt5-default
,而且看起来其他东西已被删除,因为-default
不再存在。这是删除的变更日志理由:
手动安装任何
.deb
依赖的文件qt5-default
都不起作用,您需要提供这些.deb
文件的人来更新它们。如果.deb
文件来自较旧的系统,您将无法将其配置为正常运行,因为您必须为较新的 Ubuntu 重建该软件包,这可能是也可能不是基于您的软件包年龄的选项'正在尝试安装。qt5-default
Ubuntu 21.04 存储库中缺少软件包,因此您应该通过运行以下命令自行安装所有基本软件包:来自Farshid616的StackOwerflow 答案的答案。
基于estibordo 的“长期解决方案:更改包依赖项”,我制作了以下脚本。