问题描述
我正在尝试安装R-Package RPostgreSQL,但出现以下错误,
I am trying to install R-Package RPostgreSQL, but getting the following error,
dyn.load(file,DLLpath = DLLpath,...):
无法加载共享对象'/usr/lib64/R/library/RPostgreSQL/libs/RPostgreSQL.so':
/ usr / lib64 / R / library / RPostgreSQL / libs / RPostgreSQL.so:未定义符号:PQpass
错误:加载失败
执行停止
错误:加载失败
*删除'/ usr / lib64 / R / library / RPostgreSQL'
我有 libpq
和 postgresql-dev
已安装。所有库文件都在目录中
I have libpq
and postgresql-dev
installed. All the library files are in the directory
/ usr / lib64 / pgsql /
,所有头文件都在目录中目录
/usr/lib64/pgsql/
and all header files are in the directory
/ usr / include / pgsql /
Postgre版本- 9.3.4
R版本- 3.0.2
操作系统- CentOS-6.4
Postgre Version - 9.3.4
R Version - 3.0.2
Operating System - CentOS-6.4
我错过了一些小东西,但是无法确定为什么会发生这种情况。
I am missing some small thing, but unable to find out why this is happening.
我在做什么错?
谢谢:)
推荐答案
RPostgreSQL仅在以下目录路径中检查PostgreSQL库,
The package RPostgreSQL checks for PostgreSQL libraries only in the following directory paths,
/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的安装才会成功。
So RPostgreSQL installation will be successful only if the PostgreSQL libraries exist in any of the above directories.
当我从<$ c $复制这些库时c> / usr / lib64 / pgsql 到 / usr / lib / pgsql
并尝试安装该软件包。有效。 :)
When I copied the libraries from /usr/lib64/pgsql
to /usr/lib/pgsql
and tried installing the package. It worked. :)
这篇关于RPostgreSQL安装错误-RPostgreSQL.so:未定义符号:PQpass的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!