Обсуждение: Postgis extension bug w/ OpenBSD

Поиск
Список
Период
Сортировка

Postgis extension bug w/ OpenBSD

От
Marcelo Bacha
Дата:
Hi,

I=B4ve sent this to the Postgis bug list before, but I was told that this i=
s
probably a PostgreSQL problem.

I have an OpenBSD 5.3 server, with PostgreSQL 9.3.0, which seems to work
fine. I=B4m trying to install  on it, which always worked fine.
When I try to install the extension for Postgis 2.1.0, I get this error on
psql:

  *postgres=3D# CREATE EXTENSION postgis;*
*  ERROR:  could not load library "/usr/local/pgsql/lib/rtpostgis-2.2.so":
dlopen (/usr/local/pgsql/lib/rtpostgis-2.2.so) failed: Cannot load
specified object*

The paths seems all to be OK:

  *# ls -l /usr/local/pgsql/lib/*post**
*  -rwxr-xr-x  1 root  wheel  1276039 Jul  1 16:50 /usr/local/pgsql/lib/
postgis-2.2.so*
*  -rwxr-xr-x  1 root  wheel  1208861 Jul  1 16:50 /usr/local/pgsql/lib/
rtpostgis-2.2.so*

When I try to preload the rtpostgis shared object setting the LD_PRELOAD
environment variable, I get this info on psql:

 * $ psql                   *
*(...)*
*  psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
'CurrentMemoryContext'*
*  psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
'SPI_tuptable'*
*  psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol 'SPI_result=
'
*
*  psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
'InterruptPending'*
*  psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
'SPI_processed'*
*  psql (9.2.4)*
*(...)*

In fact, I=B4ve been trying to solve this since a long time ago, and with
many previous versions of both Postgresql and Postgis, but I=B4m really stu=
ck

Thanks in advance,
Marcelo




--=20
Editio Princeps
http://www.editioprinceps.com

Re: Postgis extension bug w/ OpenBSD

От
Michael Paquier
Дата:
On Tue, Sep 17, 2013 at 4:48 PM, Marcelo Bacha <dronsz@gmail.com> wrote:
> I have an OpenBSD 5.3 server, with PostgreSQL 9.3.0, which seems to work
> fine. I=B4m trying to install  on it, which always worked fine.
Postgres is working fine as you mention, and only PostGIS development
failed. Based on the information above which looks to be a library
linking problem for your PostGIS installation, this problem is not
related to PG.

> When I try to install the extension for Postgis 2.1.0, I get this error o=
n
> psql:
>
>   postgres=3D# CREATE EXTENSION postgis;
>   ERROR:  could not load library "/usr/local/pgsql/lib/rtpostgis-2.2.so":
> dlopen (/usr/local/pgsql/lib/rtpostgis-2.2.so) failed: Cannot load specif=
ied
> object
You mention that you are trying to install postgis 2.1, but
rtpostgis-2.2.so is part of the PostGIS 2.2 bundle (version currently
in development). So which one are you trying to install?

>
> The paths seems all to be OK:
>
>   # ls -l /usr/local/pgsql/lib/*post*
>   -rwxr-xr-x  1 root  wheel  1276039 Jul  1 16:50
> /usr/local/pgsql/lib/postgis-2.2.so
>   -rwxr-xr-x  1 root  wheel  1208861 Jul  1 16:50
> /usr/local/pgsql/lib/rtpostgis-2.2.so
>
> When I try to preload the rtpostgis shared object setting the LD_PRELOAD
> environment variable, I get this info on psql:
>
>   $ psql
> (...)
>   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> 'CurrentMemoryContext'
>   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> 'SPI_tuptable'
>   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol 'SPI_resul=
t'
>   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> 'InterruptPending'
>   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> 'SPI_processed'
>   psql (9.2.4)
> (...)
>
> In fact, I=B4ve been trying to solve this since a long time ago, and with=
 many
> previous versions of both Postgresql and Postgis, but I=B4m really stuck
Also, what is the output of this command? =3D> ldd
/usr/local/pgsql/lib/rtpostgis-2.2.so
Are you sure that rtpostgis is linked to the necessary PG libs?
--=20
Michael

Fwd: Postgis extension bug w/ OpenBSD

От
Marcelo Bacha
Дата:
Hello Michael,

Thanks for your answer.

On Thu, Sep 19, 2013 at 4:46 AM, Michael Paquier
<michael.paquier@gmail.com>wrote:

> On Tue, Sep 17, 2013 at 4:48 PM, Marcelo Bacha <dronsz@gmail.com> wrote:
> > I have an OpenBSD 5.3 server, with PostgreSQL 9.3.0, which seems to wor=
k
> > fine. I=B4m trying to install  on it, which always worked fine.
> Postgres is working fine as you mention, and only PostGIS development
> failed. Based on the information above which looks to be a library
> linking problem for your PostGIS installation, this problem is not
> related to PG.
>

To be honest, I don=B4t think it=B4s a Postgres problem, but maybe somebody=
 by
here would be able to help me.


>  > When I try to install the extension for Postgis 2.1.0, I get this erro=
r
> on
> > psql:
> >
> >   postgres=3D# CREATE EXTENSION postgis;
> >   ERROR:  could not load library "/usr/local/pgsql/lib/rtpostgis-2.2.so
> ":
> > dlopen (/usr/local/pgsql/lib/rtpostgis-2.2.so) failed: Cannot load
> specified
> > object
> You mention that you are trying to install postgis 2.1, but
> rtpostgis-2.2.so is part of the PostGIS 2.2 bundle (version currently
> in development). So which one are you trying to install?
>

Sorry, I just cut&pasted the previous email I sent to the postgis list, and
by then I was trying with the devel bundle. I get the very same behaviour,
with 2.0, 2.1 (currently stable) or 2.2.
I=B4ve cleared/uninstalled everything after upgrading Postgres to 9.3.0, an=
d
now I=B4m using Postgis 2.1.


>
> >
> > The paths seems all to be OK:
> >
> >   # ls -l /usr/local/pgsql/lib/*post*
> >   -rwxr-xr-x  1 root  wheel  1276039 Jul  1 16:50
> > /usr/local/pgsql/lib/postgis-2.2.so
> >   -rwxr-xr-x  1 root  wheel  1208861 Jul  1 16:50
> > /usr/local/pgsql/lib/rtpostgis-2.2.so
> >
> > When I try to preload the rtpostgis shared object setting the LD_PRELOA=
D
> > environment variable, I get this info on psql:
> >
> >   $ psql
> > (...)
> >   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> > 'CurrentMemoryContext'
> >   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> > 'SPI_tuptable'
> >   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> 'SPI_result'
> >   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> > 'InterruptPending'
> >   psql:/usr/local/pgsql/lib/rtpostgis-2.2.so: undefined symbol
> > 'SPI_processed'
> >   psql (9.2.4)
> > (...)
> >
> > In fact, I=B4ve been trying to solve this since a long time ago, and wi=
th
> many
> > previous versions of both Postgresql and Postgis, but I=B4m really stuc=
k
> Also, what is the output of this command? =3D> ldd
> /usr/local/pgsql/lib/rtpostgis-2.2.so
> Are you sure that rtpostgis is linked to the necessary PG libs?
>

Sure, I=B4ve tried this, here=B4s the output:

# ldd /usr/local/pgsql/lib/rtpostgis-2.1.so
rtpostgis-2.1.so:
        Start    End      Type Open Ref GrpRef Name
        06460000 26485000 dlib 1    0   0      /usr/local/pgsql/lib/
rtpostgis-2.1.so
        07ae1000 27d8a000 rlib 0    1   0
 /usr/local/lib/libgdal.so.18.1
        0f27b000 2f285000 rlib 0    2   0
 /usr/local/lib/libgeos_c.so.9.2
        0717a000 27184000 rlib 0    1   0      /usr/local/lib/libproj.so.7.=
0
        06401000 26405000 rlib 0    1   0      /usr/local/lib/libjson.so.1.=
1
        04171000 24198000 rlib 0    2   0
 /usr/local/lib/libxml2.so.14.0
        0c746000 2c74d000 rlib 0    5   0      /usr/lib/libz.so.4.1
        0783c000 2791c000 rlib 0    5   0
 /usr/local/lib/libiconv.so.6.0
        0c04f000 2c058000 rlib 0    9   0      /usr/lib/libm.so.7.1
        02fb1000 22ff4000 rlib 0    2   0      /usr/local/lib/libgeos.so
        012fa000 21308000 rlib 0    1   0      /usr/lib/libsqlite3.so.21.0
        0603b000 26040000 rlib 0    1   0      /usr/lib/libexpat.so.10.0
        071ae000 271bd000 rlib 0    1   0
 /usr/local/lib/libjasper.so.2.1
        04278000 2427c000 rlib 0    1   0      /usr/local/lib/libgif.so.5.4
        0894b000 28951000 rlib 0    1   0
 /usr/local/lib/libjpeg.so.64.0
        035b6000 235bd000 rlib 0    1   0
 /usr/local/lib/libpng.so.15.14
        0cba6000 2cbae000 rlib 0    1   0      /usr/local/lib/libpq.so.5.6
        0856a000 28576000 rlib 0    1   0
 /usr/local/lib/libcurl.so.23.0
        04989000 249b5000 rlib 0    2   0      /usr/local/lib/libidn.so.17.=
0
        03a50000 23a54000 rlib 0    3   0      /usr/local/lib/libintl.so.6.=
0
        087de000 287eb000 rlib 0    3   0      /usr/lib/libssl.so.19.0
        0cea6000 2cee5000 rlib 0    3   0      /usr/lib/libcrypto.so.22.0
        0955d000 2958b000 rlib 0    3   0      /usr/lib/libstdc++.so.55.0

For sure there must be some lib I=B4m missing, but I can=B4t divise which o=
ne.
As you can see, there=B4s no other linked lib from pgsql/lib.

Any ideas?

Thanks a lot. Best,
Marcelo


> --
> Michael
>


--=20
Editio Princeps
http://www.editioprinceps.com