Thread: Installing PlPerl

Installing PlPerl

From
Renê Salomão
Date:
Hi list...

 I am trying to install PLPERL in Postgresql in order to use
regular expression to eliminate any undesired character in any given
name to be inserted in the database... I believe that using plperl is
less time consuming than doing the same approach using plpgsql
(correct if I am wrong please)...

However I was faced with the following error:

$pgsql > createlang plperl template1

 ERROR:  Load of file /usr/local/postgresql-7.3.2/lib/plperl.so failed:
libperl.so: cannot open shared object file: No such file or directory

createlang: language installation failed


Could somebody gimme a hand!!!!

My machine:

  Athlon 1.3Mhz 512Mb
  Mdk 9
  Postgresql 7.3.2
     pg_config --configure
        '--prefix=/usr/local/postgresql-7.3.2'
        '--with-perl'
        '--with-tcl'
        '--with-pgport=5433'
        'CC=gcc'
        'CFLAGS=-O2 -fpic -march=athlon-mcpu=athlon'

Following is my timing consume function (remember I'Perl's newbie)
to generate a name capitalized without any punctuation/number... Any
suggestion/comment to improve function, it will be welcome...

CREATE OR REPLACE FUNCTION XP_FORMATA_NOME (VARCHAR) RETURNS
VARCHAR AS '
  my $string = @_;

  $string =~ tr/[a-z][0-9]\.\$%\'"@#*!?()/[A-Z] /d;

  RETURN $string;
'
LANGUAGE 'plperl';


Tks...

Re: Installing PlPerl

From
Richard Huxton
Date:
On Wednesday 21 May 2003 5:26 pm, Renê Salomão wrote:
> $pgsql > createlang plperl template1
>
>  ERROR:  Load of file /usr/local/postgresql-7.3.2/lib/plperl.so failed:
> libperl.so: cannot open shared object file: No such file or directory

I think you need to have Perl installed as a shared-library as well as a
static executable. I don't think it defaults to this, so you'll either need
to recompile, or more likely grab the appropriate RPM/apt-get your package.


--
  Richard Huxton

Re: [NOVICE] Installing PlPerl

From
Josh Berkus
Date:
Rene'

>  I am trying to install PLPERL in Postgresql in order to use
> regular expression to eliminate any undesired character in any given
> name to be inserted in the database... I believe that using plperl is
> less time consuming than doing the same approach using plpgsql
> (correct if I am wrong please)...

If you built postgresql from source, you need to recompile it " --with-perl "

If you installed from RPMs, your distribution should have a PG-Perl or
Perl-Postgres RPM; install that.

--
Josh Berkus
Aglio Database Solutions
San Francisco