Não foi possível carregar o postgis-2.4.so “símbolo indefinido: Float8GetDatum”

4

Atualizei para o PostgreSQL 10.1 no Arch Linux. Criei um novo banco de dados e estou tentando instalar o postgis, mas está me dando o seguinte erro:

local=# create extension postgis;
ERROR:  could not load library "/usr/lib/postgresql/postgis-2.4.so": /usr/lib/postgresql/postgis-2.4.so: undefined symbol: Float8GetDatum

ldd output:

$ ldd /usr/lib/postgresql/postgis-2.4.so                                                                                                                                        
    linux-vdso.so.1 (0x00007ffec6f4d000)
    libgeos_c.so.1 => /usr/lib/libgeos_c.so.1 (0x00007f6e00788000)
    libproj.so.12 => /usr/lib/libproj.so.12 (0x00007f6e0051e000)
    libjson-c.so.2 => /usr/lib/libjson-c.so.2 (0x00007f6e00313000)
    libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00007f6dfffad000)
    libm.so.6 => /usr/lib/libm.so.6 (0x00007f6dffc61000)
    libc.so.6 => /usr/lib/libc.so.6 (0x00007f6dff8a9000)
    libgeos-3.6.2.so => /usr/lib/libgeos-3.6.2.so (0x00007f6dff4fc000)
    libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f6dff175000)
    libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f6dfef5e000)
    libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f6dfed40000)
    libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f6dfeb3c000)
    libicuuc.so.59 => /usr/lib/libicuuc.so.59 (0x00007f6dfe78c000)
    libz.so.1 => /usr/lib/libz.so.1 (0x00007f6dfe575000)
    liblzma.so.5 => /usr/lib/liblzma.so.5 (0x00007f6dfe34f000)
    /usr/lib64/ld-linux-x86-64.so.2 (0x00007f6e00c6b000)
    libicudata.so.59 => /usr/lib/libicudata.so.59 (0x00007f6dfc83c000)

Tanto quanto eu entendo, "símbolo indefinido" significa que há alguma incompatibilidade entre bibliotecas, no entanto, eu não tenho nenhum pacote ignorado em pacman.conf , então não tenho certeza de onde a incompatibilidade viria. / p>

Editar: ld -v output:

$ ld -v /usr/lib/postgresql/postgis-2.4.so
GNU ld (GNU Binutils) 2.29.1
ld: warning: cannot find entry symbol _start; not setting start address
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_palloc'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'WinGetPartitionLocalMemory'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'DirectFunctionCall3Coll'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'numeric_int4'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'DatumGetFloat8'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'examine_variable'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pg_do_encoding_conversion'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'GetCurrentTransactionId'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'per_MultiFuncCall'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'Float8GetDatum'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'errhint'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'errfinish'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'datumCopy'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_modifytuple'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_typlenbyvalalign'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'deconstruct_array'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_attnum'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'WinGetFuncArgInPartition'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_fnumber'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'makeMdArrayResult'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'DirectFunctionCall1Coll'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pg_atoi'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_guc_variables'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'heap_freetuple'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'init_MultiFuncCall'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_call_result_type'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'palloc'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'MemoryContextDelete'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'errmsg'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'WinGetFuncArgCurrent'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pg_detoast_datum_slice'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'accumArrayResult'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'MemoryContextCreate'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'hash_search'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'TupleDescGetAttInMetadata'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'ProcessInterrupts'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pg_qsort'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_finish'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'list_nth'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'textout'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'ReleaseSysCache'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_exec'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'WinGetCurrentPosition'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'DirectFunctionCall2Coll'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'DirectFunctionCall4Coll'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_gettype'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_connect'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'errstart'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_getbinval'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'end_MultiFuncCall'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'regclassin'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'repalloc'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'WinGetPartitionRowCount'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'BlessTupleDesc'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'CurrentMemoryContext'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'AggCheckCallContext'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_tuptable'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'DirectFunctionCall5Coll'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_fn_expr_argtype'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_attstatsslot'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'array_iterate'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pg_detoast_datum'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pg_detoast_datum_copy'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'default_statistics_target'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'hash_create'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'array_create_iterator'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_getvalue'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'HeapTupleHeaderGetDatum'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'GetDatabaseEncoding'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'GetNumConfigOptions'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'my_exec_path'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'heap_form_tuple'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'construct_array'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'ArrayGetNItems'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pfree'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SearchSysCache'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'elog_start'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_share_path'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'hash_any'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_typbyval'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'errcode'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'MemoryContextAlloc'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'palloc0'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_typlen'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'array_free_iterator'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'get_rel_name'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'BuildTupleFromCStrings'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'RelationNameGetTupleDesc'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'SPI_processed'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'errmsg_internal'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'vacuum_delay_point'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pqsignal'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'free_attstatsslot'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'DefineCustomStringVariable'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'elog_finish'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'pstrdup'
/usr/lib/postgresql/postgis-2.4.so: undefined reference to 'InterruptPending'
    
por denaje 10.11.2017 / 16:26

2 respostas

1

Na verdade, acabei de criar a extensão postgis no arch linux. Sem problemas.

  1. Faça o download da fonte do link

  2. Descompacte em algum lugar

  3. execute ./autogen.sh , em seguida, ./configure , em seguida, make

isso me levou 10 minutos em uma máquina não muito rápida

Em seguida, vá para a pasta de instalação do postgrest, /usr/lib/postgresql , e copie dois arquivos: /postgis-2.4.1/postgis/postgis-2.4.so e postgis-2.4.1/raster/rt_pg/rtpostgis-2.4.so . Isso é tudo.

Agora você pode executar create extension postgis; sem erros

    
por 12.11.2017 / 12:32