我安装了从网站下载的 Lazarus IDE,而不是从 Ubuntu 软件管理器下载的。我无法从 USC 安装它,所以我下载了它。但在我使用
sudo dpkg -i *.deb
(我在下载的文件夹中运行)我无法安装或卸载其他任何东西。例如,当我尝试安装 SciDavis 时,我得到:
misery@VaultDweller:~$ sudo apt-get install scidavis 正在读取软件包列表...已准备就绪 构建依赖关系树 正在读取有关状态的信息...就绪 建议运行“apt-get -f install”来修复它们: 以下软件包存在依赖性问题: lazarus-ide-0.9.30.2:需要:libgdk-pixbuf2.0-0(>= 2.22.0)但无法安装 需要:libgtk2.0-0 (>= 2.24.0) ale 2.20.1-0ubuntu2.1 需要安装 lazarus-ide-gtk2-0.9.30.2:需要:libgdk-pixbuf2.0-0(>= 2.22.0)但无法安装 需要:libgtk2.0-0 (>= 2.24.0) ale 2.20.1-0ubuntu2.1 需要安装 lcl-qt4-0.9.30.2:需要:libqt4pas-dev 但无法安装 scidavis:需要:libmuparser0但不会安装 需要:libqt4-qt3support (>= 4:4.5.3) 但不会安装 需要:libqwt5-qt4 但不会安装 需要:libqwtplot3d-qt4-0 但不会安装 E:未解决的依赖关系。请尝试不使用软件包的“apt-get -f install”(或提供解决方案)。
Lazarus 运行良好,就像之前安装的其他应用程序一样。如果我使用推荐的
apt-get -f install
它删除了 Lazarus 软件包,导致 Lazarus 不再运行,但是 USC 和 apt-get 可以正常运行。
如何修复?
答案1
这意味着 Lazarus 软件包的依赖项无法在您的 Ubuntu 版本中得到满足。因此 apt-get 决定最好将其删除,而不是让它处于损坏状态。
例如,Lazarus 想要 libgdk-pixbuf-2.0-0,它是不是在您的 Ubuntu (Lucid) 版本中可用。此外,它所需的 libgtk2.0-0 版本(2.24.0 或更高版本)仅从 Ubuntu 11.04 开始可用。
这表明 Lazarus 包是在较新版本的 Ubuntu 中创建的。
现在,你说它可以工作,所以它显然与你安装的库并不完全不兼容。所以这是软件包装的问题,而不是二进制文件本身的问题。如果它与旧版本(例如 libgtk)兼容,那么软件包应该不是需要更新的版本。这必须由 Lazarus 人员修复。
有两种方法可以解决包装问题:
尝试找到适用于 Ubuntu 10.04 的 Lazarus 软件包版本(可能已过时且缺少您需要的功能)。
将您的 Ubuntu 升级到较新的版本,Lazarus 很可能能够顺利安装而不会发生冲突。
答案2
您至少需要 Ubuntu 11.04 才能使用这些 Lazarus 软件包。它们不适用于 10.04