Thread: Completely stuck - cannot get pgcrypto to work.

Completely stuck - cannot get pgcrypto to work.

From
Richard Curtis
Date:
Hi all.
   I have spent all afternoon trying to fix this problem and I am
getting nowhere.

I did a fresh install of Redhat 7.3, then installed Postgres 7.3.2.
The problem I have is no matter what I try, I get "ERROR:  Load of file
/usr/local/pgsql/lib/pgcrypto.so failed:
/usr/local/pgsql/lib/pgcrypto.so: undefined symbol: px_get_random_bytes"

Can anyone help me resolve this problem ?

The exact commands I used to install and configure postgres are :

  ./configure
   make
   make install
   adduser postgres
   mkdir /usr/local/pgsql/data
   chown postgres /usr/local/pgsql/data
   su - postgres
   /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
   /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile 2>&1 &

and :
  cd ./contrib/pgcrypto/
changed makefile to use "dev".
make
make install
make installcheck
all tests fails.

If however, I dont change the makefile, i.e. I leave it using "silly",
everything works!!!!

What am I doing wrong ?

Richard


Re: Completely stuck - cannot get pgcrypto to work.

From
Joe Conway
Date:
Richard Curtis wrote:
> The problem I have is no matter what I try, I get "ERROR:  Load of file
> /usr/local/pgsql/lib/pgcrypto.so failed:
> /usr/local/pgsql/lib/pgcrypto.so: undefined symbol: px_get_random_bytes"
>
[...snip...]
>  cd ./contrib/pgcrypto/
> changed makefile to use "dev".
> make
> make install
> make installcheck
> all tests fails.
>
> If however, I dont change the makefile, i.e. I leave it using "silly",
> everything works!!!!

I just tried it here on Red Hat 8.0, and Postgres 7.4devel (but I don't
believe pgcrypto has changed since the 7.3 release) and it works fine.

In the Makefile, did you do:
   random = dev
or
   random = 'dev'

If I use the former, it works. The latter, however gives me the same
error you are getting.

HTH,

Joe


Re: Completely stuck - cannot get pgcrypto to work.

From
"Richard Curtis"
Date:
> > The problem I have is no matter what I try, I get "ERROR:  Load of file
> > /usr/local/pgsql/lib/pgcrypto.so failed:
> > /usr/local/pgsql/lib/pgcrypto.so: undefined symbol: px_get_random_bytes"
> >
> [...snip...]
> >  cd ./contrib/pgcrypto/
> > changed makefile to use "dev".
> > make
> > make install
> > make installcheck
> > all tests fails.
> >
> > If however, I dont change the makefile, i.e. I leave it using "silly",
> > everything works!!!!
>
> I just tried it here on Red Hat 8.0, and Postgres 7.4devel (but I don't
> believe pgcrypto has changed since the 7.3 release) and it works fine.
>
> In the Makefile, did you do:
>    random = dev
> or
>    random = 'dev'
>
> If I use the former, it works. The latter, however gives me the same
> error you are getting.

I got stressed last night, and as I had only just installed the base OS, I
decided to reinstall again.
(I am documenting the steps to setup the whole server and got in a mess
forgetting what I had an hadnt already done).

After reinstalling, it all worked fine so I am not sure what I did the first
time.

I was using "random = dev" and not "random = 'dev' ".
Anyway, it is sorted.

Thanks for the help
Richard


Re: Completely stuck - cannot get pgcrypto to work.

From
"Richard Curtis"
Date:
> > The problem I have is no matter what I try, I get "ERROR:  Load of file
> > /usr/local/pgsql/lib/pgcrypto.so failed:
> > /usr/local/pgsql/lib/pgcrypto.so: undefined symbol: px_get_random_bytes"
> >
> [...snip...]
> >  cd ./contrib/pgcrypto/
> > changed makefile to use "dev".
> > make
> > make install
> > make installcheck
> > all tests fails.
> >
> > If however, I dont change the makefile, i.e. I leave it using "silly",
> > everything works!!!!
>
> I just tried it here on Red Hat 8.0, and Postgres 7.4devel (but I don't
> believe pgcrypto has changed since the 7.3 release) and it works fine.
>
> In the Makefile, did you do:
>    random = dev
> or
>    random = 'dev'
>
> If I use the former, it works. The latter, however gives me the same
> error you are getting.

Hi again all.
   I ran into the problem once more, but this time I was able to figure out
exactly why it failed.
It seems that if the line is changed to "random = dev" then all is ok, but I
had actually got "random = dev " (note the extra space at the end).

So the problem was my accidentally placing a space in the file.

Richard