2016-10-31 6 views
1

Я пытаюсь добавить POWA в мою установку PostgreSQL. Для этого мне нужно добавить расширение pg_stat_statements. Поскольку я на платформе Windows, мне нужно создать DLL этого расширения и добавить его в папку lib PostgreSQL. Я следил за учебником в этом link. Это для PostgreSQL 9.3 с использованием Visual Studio 2010. Но я использую PostgreSQL 9.6.1 и Visual Studio 2015.Расширения PostgreSQL 9.6.1 с Visual Studio 2015

Уверен, что я не пропустил ни одного шага в этом учебнике. Я установил режим компиляции в C и включил пути исходного файла. Но я получаю много ошибок компиляции, когда пытаюсь построить свой проект.

See this image for included paths and compilation errors

Почему я получаю сообщение об ошибке, даже после того, как в том числе все необходимые исходные файлы? Когда я включаю файл pg_stat_statements.c, я получаю еще больше ошибок?

Я не знаком с кодированием C/C++. Пожалуйста, помогите мне решить эту проблему.

+0

Входящие пути выглядят так, как будто они указывают на исходный код Postgres. Вы должны использовать входящие, которые были установлены с сервером, например. в 'C: \ Program Files \ PostgreSQL \ 9.6 \ include'. –

+0

@NickBarnes Нет, я указал на мой установленный каталог PostgreSQL, а не на исходный код – user3112250

+0

. Каталог REL9_6_1 не входит в стандартную установку Postgres. Существует ли 'F: \ PostgreSQL \ 9.6 \ include'? –

ответ

1

pg_stat_statements В комплект поставки входит PostgreSQL. Вам не нужно ее компилировать самостоятельно.


Обновление: пользователь скомпилировал PostgreSQL самостоятельно из источника. В этом случае pg_stat_statements является частью contrib/ и скомпилирован с остальными вкладками.

+0

Нет, pg_stat_statements не связаны в PostgreSQL. Мы должны выполнить команду create extension, чтобы добавить это расширение. Только этого недостаточно для окон. Мы должны добавить DLL в папку lib PostgreSQL – user3112250

+0

@ user3112250: Если вы использовали [установщик Windows] (http://www.enterprisedb.com/products-services-training/pgdownload#windows), тогда 'pg_stat_statements. dll' должно быть уже там –

+0

Правильно, вы все равно должны 'CREATE EXTENSION pg_stat_statements', но DLL должна быть там уже. Если это не так, вы, вероятно, используете некоторое изворотливое перераспределение PostgreSQL. –