当我运行应用程序连接到 PostgreSQL 时,它告诉我libpq.so.5
找不到。我想知道什么是libpq.so.5
?如何使libpq.so.5
可用?我现在正在做的是使用以下命令安装 postgresql:
sudo apt-get install postgresql -y
但这有一个问题,我不想使用postgresql数据库,我只想使其libpq.so.5
可用,posgresql占用太多空间(>100MB)。还有其他更好的方法libpq.so.5
吗?我现在正在使用Debian bullseye
docker 基础镜像。
答案1
在 Debian 上,libpq.so.5
(这是 postgresql 客户端程序的共享库)位于软件包中libpq5
,因此要安装它,请运行:
sudo apt-get install libpq5
从包装说明来看:
$ apt-cache show libpq5
Package: libpq5
Source: postgresql-13
Version: 13.4-3
Installed-Size: 779
Maintainer: Debian PostgreSQL Maintainers <[email protected]>
Architecture: amd64
Depends: libc6 (>= 2.25), libgssapi-krb5-2 (>= 1.17), libldap-2.4-2 (>= 2.4.7),
libssl1.1 (>= 1.1.0)
Description-en: PostgreSQL C client library
libpq is a C library that enables user programs to communicate with
the PostgreSQL database server. The server can be on another machine
and accessed through TCP/IP. This version of libpq is compatible
with servers from PostgreSQL 8.2 or later.
.
This package contains the run-time library, needed by packages using
libpq.
.
PostgreSQL is an object-relational SQL database management system.
顺便说一句,您可以使用apt-file
命令(位于apt-file
包中)来查找文件名(或部分文件名)属于哪个包。例如
$ apt-file search libpq.so.5
libpq5: /usr/lib/x86_64-linux-gnu/libpq.so.5
libpq5: /usr/lib/x86_64-linux-gnu/libpq.so.5.12