【问题标题】:RPostgreSQL installation Error - RPostgreSQL.so: undefined symbol: PQpassRPostgreSQL 安装错误 - RPostgreSQL.so:未定义符号:PQpass
【发布时间】:2014-07-12 08:34:48
【问题描述】:

我正在尝试安装 R-Package RPostgreSQL,但出现以下错误,

Error in dyn.load(file, DLLpath = DLLpath, ...) : 
  unable to load shared object '/usr/lib64/R/library/RPostgreSQL/libs/RPostgreSQL.so':
  /usr/lib64/R/library/RPostgreSQL/libs/RPostgreSQL.so: undefined symbol: PQpass
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/usr/lib64/R/library/RPostgreSQL’

我安装了libpqpostgresql-dev。所有的库文件都在目录中

/usr/lib64/pgsql/和所有头文件都在目录中

/usr/include/pgsql/

Postgre 版本 - 9.3.4 R 版本 - 3.0.2 操作系统 - CentOS-6.4

我遗漏了一些小东西,但无法找出发生这种情况的原因。

我做错了什么?如何纠正这个问题?

【问题讨论】:

  • 我想说找到的libpq.soRPostgreSQL.so 最初链接的那个不同。 ldd /usr/lib64/R/library/RPostgreSQL/libs/RPostgreSQL.so 请。

标签: r centos rpostgresql


【解决方案1】:

看起来 pgsql 库不再安装在它们以前的位置。我链接了两者:

ln -s /usr/pgsql-9.3/lib /usr/lib/pgsql

ln -s /usr/pgsql-9.3/include /usr/include/pgsql

这对我有用:)

【讨论】:

    【解决方案2】:

    RPostgreSQL 包仅在以下目录路径中检查 PostgreSQL 库,

        /usr/lib 
    /usr/lib/pgsql 
    /usr/lib/postgresql 
    /usr/local/lib 
    /usr/local/lib/pgsql 
    /usr/local/lib/postgresql 
    /usr/local/pgsql/lib 
    /usr/local/postgresql/lib 
    /opt/lib 
    /opt/lib/pgsql 
    /opt/lib/postgresql 
    /opt/local/lib 
    /opt/local/lib/postgresql 
    /opt/local/lib/postgresql84 
    /sw/opt/postgresql-8.4/lib 
    /Library/PostgresPlus/8.4SS/lib 
    /sw/lib
    

    它不会检查LD_LIBRARY_PATH/etc/ld.so.conf 中的目录。

    因此,只有在上述任何目录中存在 PostgreSQL 库时,RPostgreSQL 安装才会成功。

    当我将库从 /usr/lib64/pgsql 复制到 /usr/lib/pgsql 并尝试安装包时。有效。 :)

    【讨论】:

    • 您的回答帮助我安装了它。但是检查包中的配置文件,结果发现它首先检查了pg_config --libdir。我需要做的就是确保pg_configPATH 中可见。
    • @user1071847 你能解释一下如何让 pg_config 在 PATH 中可见吗?
    • @Andy:(这是针对 Linux 的。)在我的 .bash_profile 文件中,我将 PATH 编辑为 PATH=$HOME/bin:$HOME/usr/bin:$HOME/usr/local/pgsql/bin:$PATH。在您的情况下,您必须将 $HOME/usr/local/pgsql/bin 替换为 pg_config 的任何路径,当然,除最后一个之外的所有其他路径组件仅用于我的设置。
    猜你喜欢
    • 2012-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-16
    • 2019-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多