Postgresql пользовательские проблемы с функцией
Я установил postgresql в моем Ubuntu 14.04 с помощью команды apt-get..
Postgresql 9,4
libpg 9.4.8
Я хочу добавить пользовательскую функцию c для динамической загрузки.
У меня есть мой файл c и файл функции sql готовы в соответствии со спецификацией, но основная проблема заключается в том, что файл c содержит строки заголовка, такие как..
#include "postgres.h" #include#include "fmgr.h"
у меня есть папка на рабочем столе, но нет файла postgers.h или fmgr.h..
Я не знаю, где найти исходный файл в моей системе, но я скачал весь исходный код из git и добавил в ту же папку..
Если я запускаю команду компиляции, она показывает
postgres_ext.h:47:9: error: unknown type name 'PG_INT64_TYPE'<br>
typedef PG_INT64_TYPE pg_int64;
я не знаю, с чего начать. Должен ли я поместить свой файл в любой каталог postgres, а затем скомпилировать или загрузить исходный файл? Что делать с ошибкой..? Пожалуйста, помогите.. Большое спасибо заранее.
1 ответ
Используйте PGXS для компиляции вашего кода как расширения, написав простой Makefile.
Это установит для вас путь включения, путь к библиотеке и т. Д. И предоставит правильные флаги компилятора.
Это обсуждается в той же документации, что и учебные пособия, которые охватывают написание основных функций языка Си.