Thread: general trouble installing languages
I suspect at this point I may need to recompile things? I'm not sure what the trouble is. Can I try the directions in http://www.postgresql.org/idocs/index.php?plperl-install.html in lieu of a complete recompilation? The runit does indicate that with-perl was included, so I don't understand why this didn't work, but perhaps (see below) because the timestamps are different? I didn't have any better luck with trying to createlang on plpgsql either... ...... (Also, trying to link libperl.so.1 to libperl.so failed. And I don't think it's a shared library problem, as I'm not getting that message anywhere.) The error message is now a bit more detailed: > createlang -L /usr/local/pgsql/lib -d Text plperl ERROR: Load of file /usr/local/pgsql/lib/plperl.so failed: ld.so.1: /usr/local /pgsql/bin/postmaster: fatal: libperl.so.1: open failed: No such file or direct ory createlang: language installation failed I am running this command from the account under which psql was installed & started (which shd be superuser). I do note that: > ls -l /usr/local/pgsql/lib/plperl.so - -rwxr-xr-x 1 root other 93252 Feb 25 2002 /usr/local/pgsql/lib/plpe rl.so* is earlier than the dates of the compilation in the src/pl dir: > ls -l /export/home/download/postgresql-7.2/src/pl/plperl/ total 184 - -rw-r--r-- 1 nishad other 754 Sep 16 2001 GNUmakefile - -rw-r--r-- 1 nishad other 17459 Aug 16 14:21 Makefile - -rw-r--r-- 1 nishad other 2317 Aug 26 2001 Makefile.PL - -rw-r--r-- 1 nishad other 440 Dec 19 2000 README - -rw-r--r-- 1 nishad other 2402 Aug 16 14:21 SPI.c - -rw-r--r-- 1 nishad other 7396 Aug 16 14:21 SPI.o - -rw-r--r-- 1 nishad other 1211 Jun 8 2001 SPI.xs drwxr-xr-x 4 nishad other 512 Aug 16 14:21 blib/ - -rw-r--r-- 1 nishad other 325 Jun 8 2001 eloglvl.c - -rw-r--r-- 1 nishad other 78 Jun 8 2001 eloglvl.h - -rw-r--r-- 1 nishad other 2008 Aug 16 14:21 eloglvl.o - -rw-r--r-- 1 nishad other 0 Aug 16 14:21 plperl.bs - -rw-r--r-- 1 nishad other 24021 Jan 24 2002 plperl.c - -rw-r--r-- 1 nishad other 18468 Aug 16 14:21 plperl.o - -rw-r--r-- 1 nishad other 0 Aug 16 14:21 pm_to_blib - -rw-r--r-- 1 nishad other 7519 Nov 5 2001 ppport.h Hm....??? Perhaps recompilation is in order... Or just reinstallation? (of what? no .so file here) Thanks, --Cindy
On Tue, 2002-09-17 at 18:46, Cindy wrote: > > I suspect at this point I may need to recompile things? I'm not sure > what the trouble is. Can I try the directions in ... > The error message is now a bit more detailed: > > > createlang -L /usr/local/pgsql/lib -d Text plperl > ERROR: Load of file /usr/local/pgsql/lib/plperl.so failed: ld.so.1: /usr/local > /pgsql/bin/postmaster: fatal: libperl.so.1: open failed: No such file or direct > ory ^^^^^^^^^^^^ It is missing libperl, that is the shared library version of Perl itself. This is not part of PostgreSQL, so rebuilding PostgreSQL will do you no good at all. You need to build Perl from source or install a shared library package of it. -- Oliver Elphick Oliver.Elphick@lfix.co.uk Isle of Wight, UK http://www.lfix.co.uk/oliver GPG: 1024D/3E1D0C1C: CA12 09E0 E8D5 8870 5839 932A 614D 4C34 3E1D 0C1C ======================================== "Honour the LORD with thy substance, and with the firstfruits of all thine increase; So shall thy barns be filled with plenty, and thy presses shall burst out with new wine." Proverbs 3:9,10
Oliver Elphick writes: > Cindy wrote: >> ERROR: Load of file /usr/local/pgsql/lib/plperl.so failed: ld.so.1: /usr/l >ocal >> /pgsql/bin/postmaster: fatal: libperl.so.1: open failed: No such file or di >rect >> ory > ^^^^^^^^^^^^ > >It is missing libperl, that is the shared library version of Perl >itself. This is not part of PostgreSQL, so rebuilding PostgreSQL will >do you no good at all. > >You need to build Perl from source or install a shared library package >of it. Thanks. I guess I was looking for a message more like that indicated in the install docs, but since I didn't do the initial installation, for all I know that was overlooked. I'll ask our admin about the shared library package. They probably have it in a nonstandard directory <sigh>. -- Cindy ctmoore@uci.edu
Cindy writes: >Thanks. I guess I was looking for a message more like that indicated >in the install docs, but since I didn't do the initial installation, >for all I know that was overlooked. I'll ask our admin about the >shared library package. They probably have it in a nonstandard >directory <sigh>. OK, related question while I wait for my admin to respond. Assuming the shared libary package is available in some other directory, I'm assuming I'm still going to have to do something to wind up with a libperl.so in the /usr/local/pgsql/lib directory. And I'm guessing that's what is outlined in http://www.postgresql.org/idocs/index.php?plperl-install.html ?? Thanks, -- Cindy, impatient :-) ctmoore@uci.edu
On Tuesday 17 September 2002 02:42 pm, Cindy wrote: > OK, related question while I wait for my admin to respond. Assuming > the shared libary package is available in some other directory, I'm > assuming I'm still going to have to do something to wind up with a > libperl.so in the /usr/local/pgsql/lib directory. Perl itself has to be rebuilt to provide libperl.so -- Lamar Owen WGCR Internet Radio 1 Peter 4:11
On Tue, 2002-09-17 at 13:47, Lamar Owen wrote: > On Tuesday 17 September 2002 02:42 pm, Cindy wrote: > > OK, related question while I wait for my admin to respond. Assuming > > the shared libary package is available in some other directory, I'm > > assuming I'm still going to have to do something to wind up with a > > libperl.so in the /usr/local/pgsql/lib directory. > > Perl itself has to be rebuilt to provide libperl.so FWIW, it seems perl 5.8 gets this right. LER -- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 972-414-9812 E-Mail: ler@lerctr.org US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
Lamar Owen writes: >On Tuesday 17 September 2002 02:42 pm, Cindy wrote: >> OK, related question while I wait for my admin to respond. Assuming >> the shared libary package is available in some other directory, I'm >> assuming I'm still going to have to do something to wind up with a >> libperl.so in the /usr/local/pgsql/lib directory. > >Perl itself has to be rebuilt to provide libperl.so Not if the shared library is in fact already built? It very well may be on this system, I'm working at a university which has an overall administration in place on top of the individual unix boxes, and practically nothing is in standard paths (infuriating, but...). So if it's already there, just in some oddball directory, I shd be able to use it? They may have to recompile, if htis is the dir (I'm guessing, though) > ls /dcs/lib/perl/ abbrev.pl fmtmsg.ph netdir.ph std.ph admin/ form.ph netinet/ stdarg.ph alloca.ph ftw.ph newgetopt.pl stddef.ph ar.ph getcwd.pl nfs/ stdio.ph archives.ph getopt.pl nl_types.ph stdlib.ph arpa/ getopts.pl nlist.ph storclass.ph assert.ph getwidth.ph nsaddr.ph string.ph assert.pl grp.ph nserve.ph stropts.ph bigfloat.pl ieeefp.ph nsswitch.ph sum.ph bigint.pl importenv.pl open2.pl syms.ph bigrat.pl inet/ panel.ph sys/ cacheout.pl kerberos/ perldb.pl syslog.ph chat2.pl kstat.ph ph.pl syslog.pl complete.pl kvm.ph pkgdev.ph table.ph core langinfo.ph pkginfo.ph tar.ph cpio.ph lastlog.ph pkglocs.ph term.ph crypt.ph libelf.ph pkgstrct.ph termcap.pl ctime.pl libgen.ph pkgtrans.ph termio.ph ctype.ph libgenIO.ph pn.ph termios.ph curses.ph libintl.ph poll.ph time.ph deflt.ph libw.ph prof.ph timelocal.pl des/ limits.ph protocols/ tiuser.ph devmgmt.ph linenum.ph pw.ph tzfile.ph dial.ph link.ph pwd.ph ucontext.ph dirent.ph listen.ph pwd.pl ulimit.ph dlfcn.ph locale.ph regexp.ph unctrl.ph dumpvar.pl look.pl regexpr.ph unistd.ph elf.ph macros.ph resolv.ph userdefs.ph errno.ph maillock.ph rje.ph ustat.ph eti.ph malloc.ph rpc/ utime.ph euc.ph math.ph rpcsvc/ utmp.ph exceptions.pl memory.ph sac.ph utmpx.ph fastcwd.pl menu.ph search.ph validate.pl fatal.ph mon.ph setjmp.ph valtools.ph fcntl.ph mp.ph sgtty.ph values.ph find.pl nan.ph shadow.ph varargs.ph finddepth.pl ndbm.ph shellwords.pl vm/ float.ph net/ siginfo.ph wait.ph floatingpoint.ph netconfig.ph signal.ph wctype.ph flush.pl netdb.ph stat.pl widec.ph since I dont see libperl.* up there. So what exactly does the make install from the src/pl/plperl directory do, then? And would I have to do it once libperl.whatever became available? Oh, and if libperl.so is from a perl compilation why is it in psql's lib dir? Does it get copied there at some point in installation? -- Cindy ctmoore@uci.edu
On Tuesday 17 September 2002 02:58 pm, Cindy wrote: > Lamar Owen writes: > >On Tuesday 17 September 2002 02:42 pm, Cindy wrote: > >> OK, related question while I wait for my admin to respond. Assuming > >> the shared libary package is available in some other directory, I'm > >> assuming I'm still going to have to do something to wind up with a > >> libperl.so in the /usr/local/pgsql/lib directory. > >Perl itself has to be rebuilt to provide libperl.so > Not if the shared library is in fact already built? It very well > may be on this system, I'm working at a university which has an > overall administration in place on top of the individual unix boxes, > and practically nothing is in standard paths (infuriating, but...). > So if it's already there, just in some oddball directory, I shd > be able to use it? > Oh, and if libperl.so is from a perl compilation why is it in psql's lib > dir? Does it get copied there at some point in installation? The file libperl.so is a dynamically linkable version of the embeddable libperl.a. This allows an extension module to embed perl in itself. The plperl.so module is a 'wrapper' with a few extra features that embeds the whole perl interpreter (libperl.so) into the backend. It shouldn't be in the psql libdir; it should be in a system libdir. If you have sufficient privileges to do so, do a 'find / -name "libperl.so*" -print' and see if it is anywhere on your system in a place the dynamic loader (ld.so) can find it. To recap: 1.) plperl.so is the PL/Perl extension module provided as part of the PostgreSQL distribution; 2.) libperl.so is the perl interpreter suitable for dynamic loading into an extension module and is provided by the perl package; 3.) 1 uses 2. -- Lamar Owen WGCR Internet Radio 1 Peter 4:11
On Tue, 17 Sep 2002 10:46:35 -0700 Cindy <ctmoore@uci.edu> wrote: <SNIP> > > > createlang -L /usr/local/pgsql/lib -d Text plperl > ERROR: Load of file /usr/local/pgsql/lib/plperl.so failed: ld.so.1: /usr/local > /pgsql/bin/postmaster: fatal: libperl.so.1: open failed: No such file or direct > ory > createlang: language installation failed <SNIP> Ok, a major question, what OS and version are you running? This would help things out. > > Thanks, > --Cindy > > > ---------------------------(end of broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/users-lounge/docs/faq.html > GB -- GB Clark II | Roaming FreeBSD Admin gclarkii@VSServices.COM | General Geek CTHULU for President - Why choose the lesser of two evils?