Где я могу получить исходный код libpq?
Я хочу написать приложение, которое использует Postgresql в качестве СУБД. Для написания клиентского приложения мне нужны библиотека libpq и файлы заголовков? Если да, то где я мог бы получить библиотеку libpq и заголовочные файлы.
8 ответов
Libpq включен в полный исходный код PostgreSQL. Вы можете использовать только libpq без остальной части PostgreSQL, но вы должны загрузить полный пакет.
Вы можете скачать его со страницы Загрузки PostgreSQL.
После того, как вы извлечете полный пакет, он находится внутри src\interfaces\libpq
,
В руководстве по установке PostgreSQL подробно описано, как установить только клиентские библиотеки в разделе " Установка" в разделе "Установка только для клиента".
Libpq документация также доступна.
В источниках postgresql src\interfaces\libpq.
И да, можно скомпилировать только libpq.
Я понятия не имею о файле заголовка, но вы можете получить lipq из репо, если вы используете debian:
sudo apt-get install libpq-dev
Я также столкнулся с этой проблемой, но не получил четкого ответа: в
этой проблеме четко указано, что при установке системы diesel-cli не удается найтиlibpq.lib
Прежде всего, на вашем компьютере должен быть установлен Postgre.
Также дизель требует визуального C++, поэтому загрузите и установите его, если он еще не установлен, размер установки будет ~5 ГБ.
После завершения установки, описанной выше, вам необходимо настроить переменные среды:
В моем случае путь установки postgres - C:\Program Files\PostgreSQL
таким образом добавьте 2 пути переменной среды в User variables
добавить новое в Path
где твой libpq.lib
в моем случае он доступен в обоих C:\Program Files\PostgreSQL\12\lib
а также C:\Program Files\PostgreSQL\12\bin
Как только это будет добавлено, создайте еще одну переменную среды PQ_LIB_DIR
и установите путь, как показано ниже
Примечание. После этого повторно запустите команду установки в новом окне cmd.
Источник: pq-sys и github-solution.
Для пользователей Windows он в (версия может быть другой)
C:\Program Files\PostgreSQL\11\lib
Там вы найдете libpq.lib
. Предоставьте этот каталог входу компоновщика. Не забудьте включитьC:\Program Files\PostgreSQL\11\include
каталог для включаемых каталогов.
Вы можете установить Postgres локально с https://www.enterprisedb.com/downloads/postgres-postgresql-downloads , но выберите для установки только «Инструменты командной строки».
После этого вы можете найти libpq.dll в C:\Program Files\PostgreSQL\15\bin
Я исправил эту проблему недавно. Это решение, если вы не хотите устанавливать Postgres в Windows.
Сначала вам нужно скачать бинарные файлы Postgres . Я скачиваю версию 13.6, но вроде любая версия подойдет.
Разархивируйте zip-файл. Скопируйте
libpq.lib
из
pgsql\lib
куда-то вроде
C:\Program Files\Postgres\lib
.
Выполните следующую команду в окне cmd.
setx PQ_LIB_DIR "{where_you_copy_to}"
Откройте новый cmd windows и установите
diesel_cli
cargo install diesel_cli --no-default-features --features postgres
В Linux Verify вы получаете файл libpq.
Во-первых, есть приложение: pg_config: https://www.postgresql.org/docs/current/app-pgconfig.html
после того, как вы узнали абсолютный путь к бину pg_config (если вы установили несколько версий postgressql). Затем вы можете получать
--includedir
Print the location of C header files of the client interfaces.
--libdir
Print the location of object code libraries.
Затем попробуйте скомпилировать/создать некоторый пример кода: https://www.postgresql.org/docs/current/libpq-example.html Пример распространенного сбоя: https://www.postgresql.org/docs/current/libpq-build.html