pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
PERL5 interface for POSTGRESQL
2+ messages / 2 participants
[nested] [flat]

* PERL5 interface for POSTGRESQL
@ 2000-12-27 18:28  James Merhaut <jhmerhau@dt1s78.ra.intel.com>
  0 siblings, 1 reply; 2+ messages in thread

From: James Merhaut @ 2000-12-27 18:28 UTC (permalink / raw)
  To: pgsql-interfaces; +Cc: brian.c.hintzman@intel.com; nandan.gangolli@intel.com



Hi 


I have been trying to build the PERL5 interface standalone. I have
had success in compiling and linking. Where I am experiencing
difficulty is with "make test." I get the following diagnostic:



> make test
PERL_DL_NONLAZY=1 /usr/intel/bin/perl -I./blib/arch -I./blib/lib 
-I/usr/intel/96r2/lib/perl5/sun4x_55/5.003 -I/usr/intel/96r2/lib/perl5 test.pl
Can't load './blib/arch/auto/Pg/Pg.so' for module Pg: ld.so.1: /usr/intel/bin/perl: 
fatal: relocation error: file ./blib/arch/auto/Pg/Pg.so: symbol lo_export: referenced 
symbol not found at /usr/intel/96r2/lib/perl5/DynaLoader.pm line 140.

 at blib/lib/Pg.pm line 125
BEGIN failed--compilation aborted at test.pl line 12.
test failed
*** Error code 2
make: Fatal error: Command failed for target `test_dynamic'


Any ideas on how this can be resolved? 




SOME OTHER BACKGROUND INFO
--------------------------

I built the PERL5 interface using gcc. I changed the switch "-Kpic" to "-fpic."
Compiling and linking went just fine. This was done because we don't have ucbcc.
I have attached the Makefile.


PostgreSQL Version -> V7.0.3

Perl5 Interface Version -> V1.8.0  I found this version number in the Changes file.


SYSTEM INFO:
------------
> uname -a
SunOS dt1s74 5.5.1 Generic_103640-20 sun4u sparc SUNW,Ultra-5_10



PERL INFO:
----------

> /usr/local/bin/perl -v

This is perl, version 5.005_02 built for sun4-solaris

Copyright 1987-1998, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5.0 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using `man perl' or `perldoc perl'.  If you have access to the
Internet, point your browser at http://www.perl.com/, the Perl Home Page.


> /usr/local/bin/perl -V

Summary of my perl5 (5.0 patchlevel 5 subversion 2) configuration:
  Platform:
    osname=solaris, osvers=2.5.1, archname=sun4-solaris
    uname='sunos dt1s31 5.5.1 generic_103640-20 sun4m sparc sunw,sparcstation-20 '
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef useperlio=undef d_sfio=undef
  Compiler:
    cc='gcc -B/usr/ccs/bin/', optimize='-O', gccversion=cygnus-2.7-96q4
    cppflags='-I/usr/local/include'
    ccflags ='-I/usr/local/include'
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    intsize=4, longsize=4, ptrsize=4, doublesize=8
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    alignbytes=8, usemymalloc=y, prototype=define
  Linker and Libraries:
    ld='gcc -B/usr/ccs/bin/', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib
    libs=-lsocket -lnsl -lgdbm -ldl -lm -lc -lcrypt
    libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
    cccdlflags='-fPIC', lddlflags='-G -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Built under solaris
  Compiled at Oct 20 1999 12:08:19
  @INC:
    /usr/local/lib/perl5/5.00502/sun4-solaris
    /usr/local/lib/perl5/5.00502
    /usr/local/lib/perl5/site_perl/5.005/sun4-solaris
    /usr/local/lib/perl5/site_perl/5.005

Attachments:

Makefile (text/plain, 20.6K) download # This Makefile is for the Pg extension to perl. # # It was generated automatically by MakeMaker version # 5.34 (Revision: 1.202) from the contents of # Makefile.PL. Don't edit this file, edit Makefile.PL instead. # # ANY CHANGES MADE HERE WILL BE LOST! # # MakeMaker Parameters: # INC => q[-I/intel/tua40/eng/sort_class/user_dir/jhmerhau/db/bin/pgsql/bin/include] # LIBS => [q[-L/intel/tua40/eng/sort_class/user_dir/jhmerhau/db/bin/pgsql/bin/lib -lpq]] # NAME => q[Pg] # OBJECT => q[Pg$(OBJ_EXT)] # VERSION_FROM => q[Pg.pm] # --- MakeMaker post_initialize section: # --- MakeMaker const_config section: # These definitions are from config.sh (via /usr/intel/96r2/lib/perl5/sun4x_55/5.003/Config.pm) # They may have been overridden via Makefile.PL or on the command line AR = ar CC = /usr/intel/bin/gcc CCCDLFLAGS = -fpic CCDLFLAGS = DLEXT = so DLSRC = dl_dlopen.xs LD = /usr/intel/bin/gcc LDDLFLAGS = -G -L/usr/intel/96r2/lib LDFLAGS = -L/usr/intel/96r2/lib LIBC = /lib/libc.so LIB_EXT = .a OBJ_EXT = .o RANLIB = : SO = so # --- MakeMaker constants section: AR_STATIC_ARGS = cr NAME = Pg DISTNAME = Pg NAME_SYM = Pg VERSION = 1.8.0 VERSION_SYM = 1_8_0 XS_VERSION = 1.8.0 INST_BIN = ./blib/bin INST_EXE = ./blib/script INST_LIB = ./blib/lib INST_ARCHLIB = ./blib/arch INST_SCRIPT = ./blib/script PREFIX = /usr/intel/96r2 INSTALLDIRS = site INSTALLPRIVLIB = /afs/.pdx.intel.com/itools/sun4x_55/96r2/lib/perl5 INSTALLARCHLIB = /afs/.pdx.intel.com/itools/sun4x_55/96r2/lib/perl5/sun4x_55/5.003 INSTALLSITELIB = /afs/.pdx.intel.com/itools/sun4x_55/96r2/lib/perl5/site_perl INSTALLSITEARCH = /afs/.pdx.intel.com/itools/sun4x_55/96r2/lib/perl5/site_perl/sun4x_55 INSTALLBIN = /afs/.pdx.intel.com/itools/sun4x_55/96r2/bin INSTALLSCRIPT = /afs/.pdx.intel.com/itools/sun4x_55/96r2/bin PERL_LIB = /usr/intel/96r2/lib/perl5 PERL_ARCHLIB = /usr/intel/96r2/lib/perl5/sun4x_55/5.003 SITELIBEXP = /usr/intel/96r2/lib/perl5/site_perl SITEARCHEXP = /usr/intel/96r2/lib/perl5/site_perl/sun4x_55 LIBPERL_A = libperl.a FIRST_MAKEFILE = Makefile MAKE_APERL_FILE = Makefile.aperl PERLMAINCC = $(CC) PERL_INC = /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE PERL = /usr/intel/bin/perl FULLPERL = /usr/intel/bin/perl VERSION_MACRO = VERSION DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" MAKEMAKER = /usr/intel/96r2/lib/perl5/ExtUtils/MakeMaker.pm MM_VERSION = 5.34 # FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). # BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) # ROOTEXT = Directory part of FULLEXT with leading slash (eg /DBD) !!! Deprecated from MM 5.32 !!! # PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) # DLBASE = Basename part of dynamic library. May be just equal BASEEXT. FULLEXT = Pg BASEEXT = Pg DLBASE = $(BASEEXT) VERSION_FROM = Pg.pm INC = -I/intel/tua40/eng/sort_class/user_dir/jhmerhau/db/bin/pgsql/bin/include OBJECT = Pg$(OBJ_EXT) LDFROM = $(OBJECT) LINKTYPE = dynamic # Handy lists of source code files: XS_FILES= Pg.xs C_FILES = Pg.c O_FILES = Pg.o H_FILES = MAN1PODS = MAN3PODS = Pg.pm INST_MAN1DIR = ./blib/man1 INSTALLMAN1DIR = /afs/.pdx.intel.com/itools/sun4x_55/96r2/man/man1 MAN1EXT = 1 INST_MAN3DIR = ./blib/man3 INSTALLMAN3DIR = /afs/.pdx.intel.com/itools/sun4x_55/96r2/lib/perl5/man/man3 MAN3EXT = 3 # work around a famous dec-osf make(1) feature(?): makemakerdflt: all .SUFFIXES: .xs .c .C .cpp .cxx .cc $(OBJ_EXT) # Nick wanted to get rid of .PRECIOUS. I don't remember why. I seem to recall, that # some make implementations will delete the Makefile when we rebuild it. Because # we call false(1) when we rebuild it. So make(1) is not completely wrong when it # does so. Our milage may vary. # .PRECIOUS: Makefile # seems to be not necessary anymore .PHONY: all config static dynamic test linkext manifest # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)/Config.pm $(PERL_INC)/config.h # Where to put things: INST_LIBDIR = $(INST_LIB) INST_ARCHLIBDIR = $(INST_ARCHLIB) INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs EXPORT_LIST = PERL_ARCHIVE = TO_INST_PM = Pg.pm PM_TO_BLIB = Pg.pm \ $(INST_LIBDIR)/Pg.pm # --- MakeMaker tool_autosplit section: # Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto AUTOSPLITFILE = $(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -e 'use AutoSplit;autosplit($$ARGV[0], $$ARGV[1], 0, 1, 1) ;' # --- MakeMaker tool_xsubpp section: XSUBPPDIR = /usr/intel/96r2/lib/perl5/ExtUtils XSUBPP = $(XSUBPPDIR)/xsubpp XSPROTOARG = XSUBPPDEPS = $(XSUBPPDIR)/typemap typemap XSUBPPARGS = -typemap $(XSUBPPDIR)/typemap -typemap typemap # --- MakeMaker tools_other section: SHELL = /bin/sh CHMOD = chmod CP = cp LD = /usr/intel/bin/gcc MV = mv NOOP = sh -c true RM_F = rm -f RM_RF = rm -rf TOUCH = touch UMASK_NULL = umask 0 # The following is a portable way to say mkdir -p # To see which directories are created, change the if 0 to if 1 MKPATH = $(PERL) -wle '$$"="/"; foreach $$p (@ARGV){' \ -e 'next if -d $$p; my(@p); foreach(split(/\//,$$p)){' \ -e 'push(@p,$$_); next if -d "@p/"; print "mkdir @p" if 0;' \ -e 'mkdir("@p",0777)||die $$! } } exit 0;' # This helps us to minimize the effect of the .exists files A yet # better solution would be to have a stable file in the perl # distribution with a timestamp of zero. But this solution doesn't # need any changes to the core distribution and works with older perls EQUALIZE_TIMESTAMP = $(PERL) -we 'open F, ">$$ARGV[1]"; close F;' \ -e 'utime ((stat("$$ARGV[0]"))[8,9], $$ARGV[1])' # Here we warn users that an old packlist file was found somewhere, # and that they should call some uninstall routine WARN_IF_OLD_PACKLIST = $(PERL) -we 'exit unless -f $$ARGV[0];' \ -e 'print "WARNING: I have found an old package in\n";' \ -e 'print "\t$$ARGV[0].\n";' \ -e 'print "Please make sure the two installations are not conflicting\n";' UNINST=0 VERBINST=1 MOD_INSTALL = $(PERL) -I$(INST_LIB) -I$(PERL_LIB) -MExtUtils::Install \ -e 'install({@ARGV},"$(VERBINST)",0,"$(UNINST)");' DOC_INSTALL = $(PERL) -e '$$\="\n\n";print "=head3 ", scalar(localtime), ": C<", shift, ">";' \ -e 'print "=over 4";' \ -e 'while (defined($$key = shift) and defined($$val = shift)){print "=item *";print "C<$$key: $$val>";}' \ -e 'print "=back";' UNINSTALL = $(PERL) -MExtUtils::Install \ -e 'uninstall($$ARGV[0],1);' # --- MakeMaker dist section: DISTVNAME = $(DISTNAME)-$(VERSION) TAR = tar TARFLAGS = cvf ZIP = zip ZIPFLAGS = -r COMPRESS = compress SUFFIX = .Z SHAR = shar PREOP = @$(NOOP) POSTOP = @$(NOOP) TO_UNIX = @$(NOOP) CI = ci -u RCS_LABEL = rcs -Nv$(VERSION_SYM): -q DIST_CP = best DIST_DEFAULT = tardist # --- MakeMaker macro section: # --- MakeMaker depend section: # --- MakeMaker cflags section: CCFLAGS = -I/usr/intel/96r2/include \ -I/intel/tua40/eng/sort_class/user_dir/jhmerhau/db/src/postgresql-7.0.3/src/interfaces/libpq \ -I/intel/tua40/eng/sort_class/user_dir/jhmerhau/db/src/postgresql-7.0.3/src/include OPTIMIZE = -O PERLTYPE = LARGE = SPLIT = # --- MakeMaker const_loadlibs section: # Pg might depend on some other libraries: # See ExtUtils::Liblist for details # LD_RUN_PATH = # --- MakeMaker const_cccmd section: CCCMD = $(CC) -c $(INC) $(CCFLAGS) $(OPTIMIZE) \ $(PERLTYPE) $(LARGE) $(SPLIT) $(DEFINE_VERSION) \ $(XS_DEFINE_VERSION) # --- MakeMaker post_constants section: # --- MakeMaker pasthru section: PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ LINKTYPE="$(LINKTYPE)"\ PREFIX="$(PREFIX)"\ OPTIMIZE="$(OPTIMIZE)" # --- MakeMaker c_o section: .c$(OBJ_EXT): $(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $*.c .C$(OBJ_EXT): $(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $*.C .cpp$(OBJ_EXT): $(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $*.cpp .cxx$(OBJ_EXT): $(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $*.cxx .cc$(OBJ_EXT): $(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $*.cc # --- MakeMaker xs_c section: .xs.c: $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) $(XSUBPP) $(XSPROTOARG) $(XSUBPPARGS) $*.xs >$*.tc && mv $*.tc $@ # --- MakeMaker xs_o section: .xs$(OBJ_EXT): $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) $(XSUBPP) $(XSPROTOARG) $(XSUBPPARGS) $*.xs >xstmp.c && mv xstmp.c $*.c $(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $*.c # --- MakeMaker top_targets section: #all :: config $(INST_PM) subdirs linkext manifypods all :: pure_all manifypods @$(NOOP) pure_all :: config pm_to_blib subdirs linkext @$(NOOP) subdirs :: $(MYEXTLIB) @$(NOOP) config :: Makefile $(INST_LIBDIR)/.exists @$(NOOP) config :: $(INST_ARCHAUTODIR)/.exists @$(NOOP) config :: $(INST_AUTODIR)/.exists @$(NOOP) config :: Version_check @$(NOOP) $(INST_AUTODIR)/.exists :: /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE/perl.h @$(MKPATH) $(INST_AUTODIR) @$(EQUALIZE_TIMESTAMP) /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE/perl.h $(INST_AUTODIR)/.exists -@$(CHMOD) 755 $(INST_AUTODIR) $(INST_LIBDIR)/.exists :: /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE/perl.h @$(MKPATH) $(INST_LIBDIR) @$(EQUALIZE_TIMESTAMP) /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE/perl.h $(INST_LIBDIR)/.exists -@$(CHMOD) 755 $(INST_LIBDIR) $(INST_ARCHAUTODIR)/.exists :: /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE/perl.h @$(MKPATH) $(INST_ARCHAUTODIR) @$(EQUALIZE_TIMESTAMP) /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE/perl.h $(INST_ARCHAUTODIR)/.exists -@$(CHMOD) 755 $(INST_ARCHAUTODIR) config :: $(INST_MAN3DIR)/.exists @$(NOOP) $(INST_MAN3DIR)/.exists :: /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE/perl.h @$(MKPATH) $(INST_MAN3DIR) @$(EQUALIZE_TIMESTAMP) /usr/intel/96r2/lib/perl5/sun4x_55/5.003/CORE/perl.h $(INST_MAN3DIR)/.exists -@$(CHMOD) 755 $(INST_MAN3DIR) help: perldoc ExtUtils::MakeMaker Version_check: @$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) \ -MExtUtils::MakeMaker=Version_check \ -e 'Version_check("$(MM_VERSION)")' # --- MakeMaker linkext section: linkext :: $(LINKTYPE) @$(NOOP) # --- MakeMaker dlsyms section: # --- MakeMaker dynamic section: ## $(INST_PM) has been moved to the all: target. ## It remains here for awhile to allow for old usage: "make dynamic" #dynamic :: Makefile $(INST_DYNAMIC) $(INST_BOOT) $(INST_PM) dynamic :: Makefile $(INST_DYNAMIC) $(INST_BOOT) @$(NOOP) # --- MakeMaker dynamic_bs section: BOOTSTRAP = Pg.bs # As Mkbootstrap might not write a file (if none is required) # we use touch to prevent make continually trying to remake it. # The DynaLoader only reads a non-empty file. $(BOOTSTRAP): Makefile $(INST_ARCHAUTODIR)/.exists @echo "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" @$(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" \ -e 'use ExtUtils::Mkbootstrap;' \ -e 'Mkbootstrap("$(BASEEXT)","$(BSLOADLIBS)");' @$(TOUCH) $(BOOTSTRAP) $(CHMOD) 644 $@ $(INST_BOOT): $(BOOTSTRAP) $(INST_ARCHAUTODIR)/.exists @rm -rf $(INST_BOOT) -cp $(BOOTSTRAP) $(INST_BOOT) $(CHMOD) 644 $@ # --- MakeMaker dynamic_lib section: # This section creates the dynamically loadable $(INST_DYNAMIC) # from $(OBJECT) and possibly $(MYEXTLIB). ARMAYBE = : OTHERLDFLAGS = INST_DYNAMIC_DEP = $(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(BOOTSTRAP) $(INST_ARCHAUTODIR)/.exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(INST_DYNAMIC_DEP) LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) -o $@ $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) $(MYEXTLIB) $(PERL_ARCHIVE) $(LDLOADLIBS) $(EXPORT_LIST) $(CHMOD) 755 $@ # --- MakeMaker static section: ## $(INST_PM) has been moved to the all: target. ## It remains here for awhile to allow for old usage: "make static" #static :: Makefile $(INST_STATIC) $(INST_PM) static :: Makefile $(INST_STATIC) @$(NOOP) # --- MakeMaker static_lib section: $(INST_STATIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)/.exists $(RM_RF) $@ $(AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ @echo "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld $(CHMOD) 755 $@ # --- MakeMaker manifypods section: POD2MAN_EXE = /usr/intel/96r2/bin/pod2man POD2MAN = $(PERL) -we '%m=@ARGV;for (keys %m){' \ -e 'next if -e $$m{$$_} && -M $$m{$$_} < -M $$_ && -M $$m{$$_} < -M "Makefile";' \ -e 'print "Manifying $$m{$$_}\n";' \ -e 'system(qq[$$^X ].q["-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" $(POD2MAN_EXE) ].qq[$$_>$$m{$$_}])==0 or warn "Couldn\047t install $$m{$$_}\n";' \ -e 'chmod 0644, $$m{$$_} or warn "chmod 644 $$m{$$_}: $$!\n";}' manifypods : Pg.pm @$(POD2MAN) \ Pg.pm \ $(INST_MAN3DIR)/Pg.$(MAN3EXT) # --- MakeMaker processPL section: # --- MakeMaker installbin section: # Create a target that interfaces/Makefile can use to # determine the Perl install directory. echo-installdir: @echo $(INSTALLSITELIB) # --- MakeMaker subdirs section: # none # --- MakeMaker clean section: # Delete temporary files but do not touch installed files. We don't delete # the Makefile here so a later make realclean still has a makefile to use. clean :: -rm -rf Pg.c ./blib $(MAKE_APERL_FILE) $(INST_ARCHAUTODIR)/extralibs.all perlmain.c mon.out core so_locations pm_to_blib *~ */*~ */*/*~ *$(OBJ_EXT) *$(LIB_EXT) perl.exe $(BOOTSTRAP) $(BASEEXT).bso $(BASEEXT).def $(BASEEXT).exp -mv Makefile Makefile.old 2>/dev/null # --- MakeMaker realclean section: # Delete temporary files (via clean) and also delete installed files realclean purge :: clean rm -rf $(INST_AUTODIR) $(INST_ARCHAUTODIR) rm -f $(INST_DYNAMIC) $(INST_BOOT) rm -f $(INST_STATIC) rm -f $(INST_LIBDIR)/Pg.pm rm -rf Makefile Makefile.old # --- MakeMaker dist_basics section: distclean :: realclean distcheck distcheck : $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -e 'use ExtUtils::Manifest "&fullcheck";' \ -e 'fullcheck();' skipcheck : $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -e 'use ExtUtils::Manifest "&skipcheck";' \ -e 'skipcheck();' manifest : $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -e 'use ExtUtils::Manifest "&mkmanifest";' \ -e 'mkmanifest();' # --- MakeMaker dist_core section: dist : $(DIST_DEFAULT) @$(PERL) -le 'print "Warning: Makefile possibly out of date with $$vf" if ' \ -e '-e ($$vf="$(VERSION_FROM)") and -M $$vf < -M "Makefile";' tardist : $(DISTVNAME).tar$(SUFFIX) zipdist : $(DISTVNAME).zip $(DISTVNAME).tar$(SUFFIX) : distdir $(PREOP) $(TO_UNIX) $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) $(RM_RF) $(DISTVNAME) $(COMPRESS) $(DISTVNAME).tar $(POSTOP) $(DISTVNAME).zip : distdir $(PREOP) $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) $(RM_RF) $(DISTVNAME) $(POSTOP) uutardist : $(DISTVNAME).tar$(SUFFIX) uuencode $(DISTVNAME).tar$(SUFFIX) \ $(DISTVNAME).tar$(SUFFIX) > \ $(DISTVNAME).tar$(SUFFIX)_uu shdist : distdir $(PREOP) $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar $(RM_RF) $(DISTVNAME) $(POSTOP) # --- MakeMaker dist_dir section: distdir : $(RM_RF) $(DISTVNAME) $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -MExtUtils::Manifest=manicopy,maniread \ -e 'manicopy(maniread(),"$(DISTVNAME)", "$(DIST_CP)");' # --- MakeMaker dist_test section: disttest : distdir cd $(DISTVNAME) && $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) Makefile.PL cd $(DISTVNAME) && $(MAKE) cd $(DISTVNAME) && $(MAKE) test # --- MakeMaker dist_ci section: ci : $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -e 'use ExtUtils::Manifest "&maniread";' \ -e '@all = keys %{ maniread() };' \ -e 'print("Executing $(CI) @all\n"); system("$(CI) @all");' \ -e 'print("Executing $(RCS_LABEL) ...\n"); system("$(RCS_LABEL) @all");' # --- MakeMaker install section: install :: all pure_install doc_install install_perl :: all pure_perl_install doc_perl_install install_site :: all pure_site_install doc_site_install install_ :: install_site @echo INSTALLDIRS not defined, defaulting to INSTALLDIRS=site pure_install :: pure_$(INSTALLDIRS)_install doc_install :: doc_$(INSTALLDIRS)_install @echo Appending installation info to $(INSTALLARCHLIB)/perllocal.pod pure__install : pure_site_install @echo INSTALLDIRS not defined, defaulting to INSTALLDIRS=site doc__install : doc_site_install @echo INSTALLDIRS not defined, defaulting to INSTALLDIRS=site pure_perl_install :: @$(MOD_INSTALL) \ read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ write $(INSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ $(INST_LIB) $(INSTALLPRIVLIB) \ $(INST_ARCHLIB) $(INSTALLARCHLIB) \ $(INST_BIN) $(INSTALLBIN) \ $(INST_SCRIPT) $(INSTALLSCRIPT) \ $(INST_MAN1DIR) $(INSTALLMAN1DIR) \ $(INST_MAN3DIR) $(INSTALLMAN3DIR) @$(WARN_IF_OLD_PACKLIST) \ $(SITEARCHEXP)/auto/$(FULLEXT) pure_site_install :: @$(MOD_INSTALL) \ read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ write $(INSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ $(INST_LIB) $(INSTALLSITELIB) \ $(INST_ARCHLIB) $(INSTALLSITEARCH) \ $(INST_BIN) $(INSTALLBIN) \ $(INST_SCRIPT) $(INSTALLSCRIPT) \ $(INST_MAN1DIR) $(INSTALLMAN1DIR) \ $(INST_MAN3DIR) $(INSTALLMAN3DIR) @$(WARN_IF_OLD_PACKLIST) \ $(PERL_ARCHLIB)/auto/$(FULLEXT) doc_perl_install :: @$(DOC_INSTALL) \ "$(NAME)" \ "installed into" "$(INSTALLPRIVLIB)" \ LINKTYPE "$(LINKTYPE)" \ VERSION "$(VERSION)" \ EXE_FILES "$(EXE_FILES)" \ >> $(INSTALLARCHLIB)/perllocal.pod doc_site_install :: @$(DOC_INSTALL) \ "Module $(NAME)" \ "installed into" "$(INSTALLSITELIB)" \ LINKTYPE "$(LINKTYPE)" \ VERSION "$(VERSION)" \ EXE_FILES "$(EXE_FILES)" \ >> $(INSTALLARCHLIB)/perllocal.pod uninstall :: uninstall_from_$(INSTALLDIRS)dirs uninstall_from_perldirs :: @$(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist uninstall_from_sitedirs :: @$(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist # --- MakeMaker force section: # Phony target to force checking subdirectories. FORCE: # --- MakeMaker perldepend section: PERL_HDRS = \ $(PERL_INC)/EXTERN.h $(PERL_INC)/gv.h $(PERL_INC)/pp.h \ $(PERL_INC)/INTERN.h $(PERL_INC)/handy.h $(PERL_INC)/proto.h \ $(PERL_INC)/XSUB.h $(PERL_INC)/hv.h $(PERL_INC)/regcomp.h \ $(PERL_INC)/av.h $(PERL_INC)/keywords.h $(PERL_INC)/regexp.h \ $(PERL_INC)/config.h $(PERL_INC)/mg.h $(PERL_INC)/scope.h \ $(PERL_INC)/cop.h $(PERL_INC)/op.h $(PERL_INC)/sv.h \ $(PERL_INC)/cv.h $(PERL_INC)/opcode.h $(PERL_INC)/unixish.h \ $(PERL_INC)/dosish.h $(PERL_INC)/patchlevel.h $(PERL_INC)/util.h \ $(PERL_INC)/embed.h $(PERL_INC)/perl.h \ $(PERL_INC)/form.h $(PERL_INC)/perly.h $(OBJECT) : $(PERL_HDRS) Pg.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: $(OBJECT) : $(FIRST_MAKEFILE) # We take a very conservative approach here, but it\'s worth it. # We move Makefile to Makefile.old here to avoid gnu make looping. Makefile : Makefile.PL $(CONFIGDEP) @echo "Makefile out-of-date with respect to $?" @echo "Cleaning current config before rebuilding Makefile..." -@mv Makefile Makefile.old -$(MAKE) -f Makefile.old clean >/dev/null 2>&1 || true $(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" Makefile.PL @echo ">>> Your Makefile has been rebuilt. <<<" @echo ">>> Please rerun the make command. <<<"; false # To change behavior to :: would be nice, but would break Tk b9.02 # so you find such a warning below the dist target. #Makefile :: $(VERSION_FROM) # @echo "Warning: Makefile possibly out of date with $(VERSION_FROM)" # --- MakeMaker staticmake section: # --- MakeMaker makeaperl section --- MAP_TARGET = perl FULLPERL = /usr/intel/bin/perl $(MAP_TARGET) :: static $(MAKE_APERL_FILE) $(MAKE) -f $(MAKE_APERL_FILE) $@ $(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) @echo Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) @$(PERL) -I$(INST_ARCHLIB) -I$(INST_LIB) -I$(PERL_ARCHLIB) -I$(PERL_LIB) \ Makefile.PL DIR= \ MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= # --- MakeMaker test section: TEST_VERBOSE=0 TEST_TYPE=test_$(LINKTYPE) TEST_FILE = test.pl TESTDB_SW = -d testdb :: testdb_$(LINKTYPE) test :: $(TEST_TYPE) test_dynamic :: pure_all PERL_DL_NONLAZY=1 $(FULLPERL) -I$(INST_ARCHLIB) -I$(INST_LIB) -I$(PERL_ARCHLIB) -I$(PERL_LIB) test.pl testdb_dynamic :: pure_all PERL_DL_NONLAZY=1 $(FULLPERL) $(TESTDB_SW) -I$(INST_ARCHLIB) -I$(INST_LIB) -I$(PERL_ARCHLIB) -I$(PERL_LIB) $(TEST_FILE) test_ : test_dynamic test_static :: pure_all $(MAP_TARGET) PERL_DL_NONLAZY=1 ./$(MAP_TARGET) -I$(INST_ARCHLIB) -I$(INST_LIB) -I$(PERL_ARCHLIB) -I$(PERL_LIB) test.pl testdb_static :: pure_all $(MAP_TARGET) PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) -I$(INST_ARCHLIB) -I$(INST_LIB) -I$(PERL_ARCHLIB) -I$(PERL_LIB) $(TEST_FILE) # --- MakeMaker pm_to_blib section: pm_to_blib: $(TO_INST_PM) @$(PERL) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" \ "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -MExtUtils::Install \ -e 'pm_to_blib({qw{$(PM_TO_BLIB)}},"$(INST_LIB)/auto")' @$(TOUCH) $@ # --- MakeMaker selfdocument section: # --- MakeMaker postamble section: # End.
^ permalink raw reply [nested|flat] 2+ messages in thread

* Re: PERL5 interface for POSTGRESQL
@ 2000-12-30 03:57  Tom Lane <tgl@sss.pgh.pa.us>
  parent: James Merhaut <jhmerhau@dt1s78.ra.intel.com>
  0 siblings, 0 replies; 2+ messages in thread

From: Tom Lane @ 2000-12-30 03:57 UTC (permalink / raw)
  To: James Merhaut <jhmerhau@dt1s78.ra.intel.com>; +Cc: pgsql-interfaces

James Merhaut <jhmerhau@dt1s78.ra.intel.com> writes:
> > make test
> PERL_DL_NONLAZY=1 /usr/intel/bin/perl -I./blib/arch -I./blib/lib 
> -I/usr/intel/96r2/lib/perl5/sun4x_55/5.003 -I/usr/intel/96r2/lib/perl5 test.pl
> Can't load './blib/arch/auto/Pg/Pg.so' for module Pg: ld.so.1: /usr/intel/bin/perl: 
> fatal: relocation error: file ./blib/arch/auto/Pg/Pg.so: symbol lo_export: referenced 
> symbol not found at /usr/intel/96r2/lib/perl5/DynaLoader.pm line 140.

Hm.  Most likely, the dynamic loader isn't finding libpq.so at all.
Check your LD_LIBRARY_PATH or local equivalent.

			regards, tom lane



^ permalink  raw  reply  [nested|flat] 2+ messages in thread


end of thread, other threads:[~2000-12-30 03:57 UTC | newest]

Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2000-12-27 18:28 PERL5 interface for POSTGRESQL James Merhaut <jhmerhau@dt1s78.ra.intel.com>
2000-12-30 03:57 ` Tom Lane <tgl@sss.pgh.pa.us>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox