pypy3 import psycopg2 error (неопределенный символ: PyCoder_Encoder) - PullRequest
0 голосов
/ 16 ноября 2018

Я установил psycopg2 в pypy3 (Python3.5.3) с помощью следующего кода в Ubuntu16.04:

pypy3 -m pip install psycopg2

Однако я получил несколько ошибок:

Ошибка: b'Вы должны установить postgresql-server-dev-X.Y для создания расширения на стороне сервера или libpq-dev для создания приложения на стороне клиента. \ N '

Сбой команды "python setup.py egg_info" с кодом ошибки 1 в / tmp / pip-install-epd368s6 / psycopg2

И я нашел решение в « Вам нужно установить postgresql-server-dev-X.Y для создания расширения на стороне сервера или libpq-dev для создания приложения на стороне клиента ».

Мой компьютер уже установил Postgresql9.5, поэтому я использовал эти команды для установки:

sudo apt-get install libpq-dev
pypy3 -m pip install psycopg2

Об ошибке не сообщалось, но когда я попытался «импортировать psycopg2», я получил ImportError:

введите описание изображения здесь

Я обнаружил ту же ошибку в " pypy3 import psycopg2 error (PyCodec_Encoder) ", но я не нашел решения.

Кто-нибудь знает, как это исправить?

1 Ответ

0 голосов
/ 18 ноября 2018

Проблема PyPy, на которую вы указали , содержит ответ: «Кто-то должен будет реализовать отсутствующую функцию (и другие отсутствующие функции PyCodec_ *. В настоящее время мы реализуем очень мало в codec.py *»). 1004 *. Реализация довольно проста на основе шаблона в реализованных функциях, более сложная часть - написание тестов.

Существует пакет psycopg2cffi , который должен работать на PyPy и работать быстрее. Возможно, попробуйте и прокомментируйте здесь, если это отвечает вашим потребностям.

...