Я пытаюсь установить Nominatim 3.4.1 на Ubuntu 20.04 и PostgreSQL 12, поэтому я следую официальным инструкциям здесь , проблема в том, когда я выполняю make
, я есть эта ошибка:
[ 79%] Built target osm2pgsql_lib
[ 79%] Built target osm2pgsql
[ 79%] <b>Running external makefile /usr/lib/postgresql/12/lib/pgxs/src/makefiles/pgxs.mk</b>
/srv/nominatim/Nominatim-3.4.0/module/Makefile:11: warning: overriding recipe for target 'install'
/usr/lib/postgresql/12/lib/pgxs/src/makefiles/pgxs.mk:241: warning: ignoring old recipe for target 'install'
<b>/srv/nominatim/Nominatim-3.4.0/module/nominatim.c:1:10:</b> <b>fatal error: </b>postgres.h: No such file or directory
1 | #include <b>"postgres.h"</b>
| <b>^~~~~~~~~~~~</b>
compilation terminated.
make[3]: *** [<builtin>: nominatim.o] Error 1
make[2]: *** [module/CMakeFiles/nominatim_lib.dir/build.make:61: /srv/nominatim/Nominatim-3.4.0/module/dummy] Error 2
make[1]: *** [CMakeFiles/Makefile2:1908: module/CMakeFiles/nominatim_lib.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
первые строки nominatim.c
файла:
#include "postgres.h"
#include "fmgr.h"
Я пробовал find / -name "postgres.h"
и find / -name "fmgr.h"
и таких файлов нет.
Я почти уверен, что проблема в том, что PostgreSQL 12 удалил эти файлы, изменил имена или что-то подобное, и Nominatim 3.1.4 не знает об этом изменении. Я бы не хотел понизить PostgreSQL, чтобы решить эту проблему, если это не единственно возможное решение, также я не знаю, решит ли это проблему с помощью понижения.