Thread: $libdir

$libdir

From
"Ian Harding"
Date:
I know this is a question that gets asked a zillion times and is
almost always pilot error.

I installed PostgreSQL 8.2.x and the Tsearch2 package on NetBSD which
went fine, but I can't get the tsearch2.sql file to run.

The usual error about "file does not exist" relative to
$libdir/tsearch2 gets generated.

The docs say $libdir gets expanded to the result of

pg_config --pkglibdir

which in my case returns /usr/pkg/lib/postgresql.

In that directory are the libtsearch2.so... files along with lots of
others, with 755 permissions, owned by root.

Those permissions and ownership look OK to me, read and execute by the
whole world.

What else could be wrong?

- Ian

Re: $libdir

From
Martijn van Oosterhout
Date:
On Mon, Jun 04, 2007 at 08:25:22PM -0700, Ian Harding wrote:
> I know this is a question that gets asked a zillion times and is
> almost always pilot error.

I don't know much about this but the complaint is this:

> The usual error about "file does not exist" relative to
> $libdir/tsearch2 gets generated.

And you have:

> In that directory are the libtsearch2.so... files along with lots of
> others, with 755 permissions, owned by root.

Either the library should be "tsearch.so" not "libtsearch.so", or the
request should be for "$libdir/libtsearch" or something (perhaps a
directory is missing or something and it should be
tsearch/libtsearch.so).

Please provide the *exact* error messages if you want more detailed
help.

Hope this helps,
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> From each according to his ability. To each according to his ability to litigate.

Attachment

Re: $libdir

From
"Ian Harding"
Date:
On 6/5/07, Martijn van Oosterhout <kleptog@svana.org> wrote:
> On Mon, Jun 04, 2007 at 08:25:22PM -0700, Ian Harding wrote:
> > I know this is a question that gets asked a zillion times and is
> > almost always pilot error.
>
> I don't know much about this but the complaint is this:
>
> > The usual error about "file does not exist" relative to
> > $libdir/tsearch2 gets generated.
>
> And you have:
>
> > In that directory are the libtsearch2.so... files along with lots of
> > others, with 755 permissions, owned by root.
>
> Either the library should be "tsearch.so" not "libtsearch.so", or the
> request should be for "$libdir/libtsearch" or something (perhaps a
> directory is missing or something and it should be
> tsearch/libtsearch.so).
>

I saw that discrepancy, but assumed there was a prepending of "lib"
somewhere in the search.  Turns out that is exactly the problem, and
changing the tsearch2.sql file to reflect

$libdir/libtsearch2

works.  I will try to figure out how this happened and let the NetBSD
package maintainer know.

Thanks!

- Ian

Re: $libdir

From
Tom Lane
Date:
"Ian Harding" <harding.ian@gmail.com> writes:
> I saw that discrepancy, but assumed there was a prepending of "lib"
> somewhere in the search.  Turns out that is exactly the problem, and
> changing the tsearch2.sql file to reflect
> $libdir/libtsearch2
> works.  I will try to figure out how this happened and let the NetBSD
> package maintainer know.

Yeah, this is definitely a packaging error, because tsearch2.so is what
the file is supposed to be named.

            regards, tom lane