8

Everything was working great until I upgraded the OS to Ubuntu 17.10. Now my Django project won't run (python manage.py runserver) because psycopg2 won't import. psycopg2 is already installed with pip (nothing has changed there). To be exact this is the error:

lib/python3.5/site-packages/psycopg2/.libs/libresolv-2-c4c53def.5.so: 
symbol __res_maybe_init, version GLIBC_PRIVATE not defined in file 
libc.so.6 with link time reference
4

4 回答 4

11

重新安装 psycopg2 并使用二进制文件。

sudo pip uninstall psycopg2    
pip install psycopg2-binary
于 2018-05-19T08:23:35.807 回答
7

这是在 psycopg2 2.7.3.1 中发布新的二进制包修复的轮子构建工具的问题

于 2017-10-27T14:46:22.957 回答
4

尝试重新安装psycopg2。看起来动态链接的依赖项发生了变化。数据库适配器通常已经编译了组件,并且这些组件是针对可以在更新时更改的系统文件进行编译的,因此在主要的操作系统升级中,您几乎肯定必须重新编译 pip 安装版本。

于 2017-10-27T02:55:24.460 回答
0

我有同样的问题。显然,glibc 二进制文件存在兼容性问题。以下对我有用:

点卸载 psycopg2

sudo apt-get install postgresql-server-dev-XY (如果尚未安装)

pip install --no-binary :all: psycopg2

资料来源:使用 glibc 2.26 加载 psycopg2 时出现问题

于 2018-10-10T08:43:00.320 回答