Thread: GSL onto postgresql server 9.2

GSL onto postgresql server 9.2

From
Yuriy Rusinov
Date:
Hello, colleagues !

I have to put some C-language functions onto postgresql server 9.2. These functions are used GSL software library http://www.gnu.org/software/gsl/. In Makefile for these functions I wrote LD_FLAGS = ... -lgsl, On some source-based Linux distributions such as gentoo linux these functions successfully installed onto server, but on rpm-based distributions such as fedora and others does not. gsl library has to be compiled from sources, because some specific distributions does not have this one and rpm-installation of this library does not allowed. Error message is "error <mylibrary>.so cannot load libgsl.so.0 no such file" despite of gsl library was installed onto /usr/local, library files are installed into /usr/local/lib. Where is the problem in postgresql or distribution ?

--
Best regards,
Sincerely yours,
Yuriy Rusinov.

Re: GSL onto postgresql server 9.2

From
Albe Laurenz
Date:
Yuriy Rusinov wrote:
> I have to put some C-language functions onto postgresql server 9.2. These functions are used GSL
> software library http://www.gnu.org/software/gsl/. In Makefile for these functions I wrote LD_FLAGS =
> ... -lgsl, On some source-based Linux distributions such as gentoo linux these functions successfully
> installed onto server, but on rpm-based distributions such as fedora and others does not. gsl library
> has to be compiled from sources, because some specific distributions does not have this one and rpm-
> installation of this library does not allowed. Error message is "error <mylibrary>.so cannot load
> libgsl.so.0 no such file" despite of gsl library was installed onto /usr/local, library files are
> installed into /usr/local/lib. Where is the problem in postgresql or distribution ?

Read "man ld", the description of "search paths to locate
required shared libraries".

/usr/local/lib is not automatically searched.
I would either install the library in /usr/lib,
link the shared object with -Wl,-rpath,/usr/local/lib
or put /usr/local/lib into /etc/ld.so.conf and run
ldconfig.

Yours,
Laurenz Albe


Re: GSL onto postgresql server 9.2

From
Yuriy Rusinov
Date:
Thanks a lot.

I have compiled gsl with prefix=/usr and this is quite acceptable for us.



On Mon, Apr 15, 2013 at 2:30 PM, Albe Laurenz <laurenz.albe@wien.gv.at> wrote:
Yuriy Rusinov wrote:
> I have to put some C-language functions onto postgresql server 9.2. These functions are used GSL
> software library http://www.gnu.org/software/gsl/. In Makefile for these functions I wrote LD_FLAGS =
> ... -lgsl, On some source-based Linux distributions such as gentoo linux these functions successfully
> installed onto server, but on rpm-based distributions such as fedora and others does not. gsl library
> has to be compiled from sources, because some specific distributions does not have this one and rpm-
> installation of this library does not allowed. Error message is "error <mylibrary>.so cannot load
> libgsl.so.0 no such file" despite of gsl library was installed onto /usr/local, library files are
> installed into /usr/local/lib. Where is the problem in postgresql or distribution ?

Read "man ld", the description of "search paths to locate
required shared libraries".

/usr/local/lib is not automatically searched.
I would either install the library in /usr/lib,
link the shared object with -Wl,-rpath,/usr/local/lib
or put /usr/local/lib into /etc/ld.so.conf and run
ldconfig.

Yours,
Laurenz Albe



--
Best regards,
Sincerely yours,
Yuriy Rusinov.