AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 476776
Accepted
arthur
arthur
Asked: 2013-02-09 01:44:30 +0800 CST2013-02-09 01:44:30 +0800 CST 2013-02-09 01:44:30 +0800 CST

yum:两个存储库中的相同包,强制从不同的存储库安装包

  • 772

我正在开发一个 PostgresDB 插件。该插件在 Centos 6.3 的 Postgres 中运行。为了能够编译我的项目,我必须安装一些来自 epel 存储库的库和一些来自 rpmforge 的库。有趣的是,一些包在两个存储库中都是重复的,例如:

# yum whatprovides postgis

Loaded plugins: fastestmirror, presto, priorities, refresh-packagekit
Loading mirror speeds from cached hostfile
 * Webmin: download.webmin.com
 * base: mirror2.hs-esslingen.de
 * epel: mirror.awanti.com
 * extras: mirror2.hs-esslingen.de
 * rpmforge: mirror.nl.leaseweb.net
 * updates: mirror.netcologne.de
postgis-1.5.3-1.el6.x86_64 : Geographic Information Systems Extensions to
                           : PostgreSQL
Repo        : epel
Matched from:



postgis-1.3.6-1.el6.rf.x86_64 : Geographic Information Systems Extensions to
                              : PostgreSQL
Repo        : rpmforge
Matched from:

现在我的项目编译了,但没有链接到缺失的引用:

/usr/pgsql-9.1/lib/postgis-1.5.so: undefined reference to `accumArrayResult'
/usr/pgsql-9.1/lib/postgis-1.5.so: undefined reference to `TupleDescGetAttInMetadata'
/usr/pgsql-9.1/lib/postgis-1.5.so: undefined reference to `repalloc'
/usr/pgsql-9.1/lib/postgis-1.5.so: undefined reference to `SPI_exec'
/usr/pgsql-9.1/lib/postgis-1.5.so: undefined reference to `init_MultiFuncCall'

这很可能意味着,有些软件包混淆了:有些是从一个存储库安装的,有些是从另一个存储库安装的。

问题:(i) 我如何告诉 yum 从一个存储库安装软件包,然后从另一个存储库重新安装(以查看链接错误是否会消失);(ii) 如何查看系统上的哪些软件包是从一个存储库安装的,以及从另一个存储库安装的?

yum
  • 2 2 个回答
  • 8378 Views

2 个回答

  • Voted
  1. NickW
    2013-02-09T02:00:20+08:002013-02-09T02:00:20+08:00

    要从一个安装包,请排除 /etc/yum.repos.d/epel 或 /etc/yum.repos.d/rpmforge 文件中的包。

    exclude= <包名>

    添加在最后,如果你愿意,你可以添加多行。

    安装的包应该在 /var/log/yum.log 中列出

    • 9
  2. Best Answer
    Sven
    2013-02-09T01:58:51+08:002013-02-09T01:58:51+08:00

    yum list installed将告诉您安装了给定软件包的回购协议,例如:

    bonnie++.x86_64                     1.96-2.el6                  @epel/6.2  
    

    要选择要安装的变体,只需使用列表中要安装的变体的确切名称即可whatprovides:

    yum install postgis-1.3.6-1.el6.rf.x86_64
    

    有关详细信息,请参阅 的specify package names部分man yum。

    • 5

相关问题

  • 如何从 RHEL 5 迁移到 CentOS 5?

  • yum:两台服务器上的设置相同,结果不同

  • 用于维护 yum 存储库的工具

  • CentOS 的依赖挑战

  • RHEL 5.3 上可用的 yum 存储库

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve