Ubuntu 12.04 - 确认未满足的依赖项

时间:2013-11-14 13:31:39

标签: linux oracle ubuntu apt-get

我想在Ubuntu 12.04上安装Oracle XE 10g和Shorewall

问题: Oracle XE 10g需要“bc:i386”而Shorewall需要“bc”(两者都是依赖......)

我认为不可能同时拥有两个...... 由于Oracle XE 10g仅需要“bc:386”进行配置(而不是在配置后运行数据库) - 这个想法如下:

  1. 使用“bc:386”
  2. 安装Oracle XE 10g
  3. 卸载“bc:i386”(数据库仍然运行 - bc:只需配置i386),命令为:“dpkg -r --force-depends bc:i386”
  4. 安装shorewall(和“bc”),大家都很开心。
  5. 问题: 当我想在“dpkg -r --force-depends bc:i386”之后使用apt-get时,它会抱怨未满足的依赖关系。

    apt-get install shorewall
    Reading package lists... Done
    Building dependency tree 
    Reading state information... Done
    You might want to run 'apt-get -f install' to correct these:
    The following packages have unmet dependencies:
     oracle-xe-universal:i386 : Depends: bc:i386 but it is not going to be installed
     shorewall : Depends: bc but it is not going to be installed
    E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
    

    我该如何解决这个问题? 请记住 - 我想使用Oracle XE 10g和shorewall - 所以请不要使用“使用mysql而不是oracle”等答案; - )

    谢谢你!

1 个答案:

答案 0 :(得分:1)

似乎处理了类似的问题in this post

我的第一个建议是在那篇文章中:安装amd64变种 bc 并忽略 bc:i386 包。

我还不清楚你是否尝试过建议的解决方案apt-get -f -install,如果是的话,发生了什么。

一般来说,混合使用 dpkg apt-get 来操作包数据库是没有什么好帮助的,除非你确切知道你做了什么。

您可以尝试的另一个变体是在一个apt-get安装调用中指定oracle和shorewall并查看所有解析器建议。 (注意:这可能是一个耗时的艰难方法,特别是选项 - 完全解析器启用)