Received: from sss.pgh.pa.us (sss.pgh.pa.us [209.114.132.154]) by mail.postgresql.org (8.11.1/8.11.1) with ESMTP id f17IZ0x87508; Wed, 7 Feb 2001 13:35:00 -0500 (EST) (envelope-from tgl@sss.pgh.pa.us) Received: from sss2.sss.pgh.pa.us (tgl@localhost [127.0.0.1]) by sss.pgh.pa.us (8.11.1/8.11.1) with ESMTP id f17IYw906814; Wed, 7 Feb 2001 13:34:58 -0500 (EST) To: pgsql-hackers@postgreSQL.org, pgsql-interfaces@postgreSQL.org Subject: pgAccess fails to launch on HPUX Date: Wed, 07 Feb 2001 13:34:58 -0500 Message-ID: <6811.981570898@sss.pgh.pa.us> From: Tom Lane X-Archive-Number: 200102/236 X-Sequence-Number: 4367 I thought I'd tried pgAccess back in the dim past with success, but as of current sources it fails on HPUX 10.20 and Tcl 8.3.2: $ pgaccess regression Error in startup script: couldn't load file "libpgtcl.sl": no such file or directory while executing "load libpgtcl[info sharedlibextension]" (procedure "main" line 3) invoked from within "main $argc $argv" (file "/home/postgres/testversion/share/pgaccess/main.tcl" line 249) $ The problem here is that Tcl does not do dynamic path searching, even if you give it the necessary environment-variable setting: $ SHLIB_PATH="/home/postgres/testversion/lib:." wish % load libpgtcl.sl /usr/lib/dld.sl: Can't open shared library: libpgtcl.sl /usr/lib/dld.sl: No such file or directory couldn't load file "libpgtcl.sl": no such file or directory % load /home/postgres/testversion/lib/libpgtcl.sl [ works fine ] And the reason for *that* is that Tcl doesn't pass the DYNAMIC_PATH flag to shl_load(). I find that sourceforge.net already has a couple of bug reports posted on this, so perhaps the Tcl guys will get their act together and add the flag in Tcl 8.4, but in the meantime I think we have very little choice except to specify the full path to the library in pgaccess' load command. Does anyone object if I modify pgaccess so that it always specifies the full path to the library? That seems like it'd be a good idea even on OSes without this quirk, because it'd ensure getting the matching version of libpgtcl and libpq even if your SHLIB_PATH/LD_LIBRARY_PATH points to some other version. regards, tom lane