我能够下载 qt3 yum 包
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/qt3-devel-3.3.8b-51.el7.x86_64.rpm
但安装时缺少一些依赖项
Error:
Problem: conflicting requests
- nothing provides qt3 = 3.3.8b-51.el7 needed by qt3-devel-3.3.8b-51.el7.x86_64
- nothing provides libmng.so.1()(64bit) needed by qt3-devel-3.3.8b-51.el7.x86_64
- nothing provides libqt-mt.so.3()(64bit) needed by qt3-devel-3.3.8b-51.el7.x86_64
- nothing provides libqui.so.1()(64bit) needed by qt3-devel-3.3.8b-51.el7.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
我需要 qt3 来编译旧软件,但我无法使用远程 yum 存储库安装它:
sudo yum install qt3 qt3-devel qt3-qtbase-devel
作为:
No match for argument: qt3
No match for argument: qt3-devel
No match for argument: qt3-qtbase-devel
Error: Unable to find a match: qt3 qt3-devel qt3-qtbase-devel
尝试安装 qt 会发送回 qt5
答案1
尝试这个:
sudo yum install http://mirror.centos.org/centos/7/os/x86_64/Packages/qt3-3.3.8b-51.el7.x86_64.rpm http://mirror.centos.org/centos/7/os/x86_64/Packages/qt3-devel-3.3.8b-51.el7.x86_64.rpm http://mirror.centos.org/centos/7/os/x86_64/Packages/libmng-1.0.10-14.el7.x86_64.rpm http://mirror.centos.org/centos/7/os/x86_64/Packages/libmng-devel-1.0.10-14.el7.x86_64.rpm
答案2
安装属于旧版本发行版的软件包可能会出现问题,并且可能使您的系统无法使用。如果您确实想使用这种方法:
检查缺失的软件包是否可以从同一来源获得
http://mirror.centos.org/centos/7/os/x86_64/Packages/
并安装这些。依赖项可能依赖于更多旧的包,因此您可能需要重申,直到满足所有递归依赖项。
生成的程序可能依赖于几个旧的库版本,因此如果不像在构建系统上那样手动安装库依赖项,它可能无法在其他 Centos 8 系统上运行。 (开发者库除外)
在我看来,从源代码构建 Qt3如果可能的话,基于 Centos 8 系统的库是更好的选择。这将避免因使用不适合您的发行版的软件包而出现的问题。
如果可能的话,静态链接本地 Qt3 库将允许在其他 Centos 8 系统上运行该程序。否则,您必须将程序与 Qt3 共享库打包。