Received: from sss.sss.pgh.pa.us (sss.pgh.pa.us [206.210.65.6]) by hub.org (8.9.1/8.9.1) with ESMTP id NAA15045; Fri, 6 Nov 1998 13:48:07 -0500 (EST) (envelope-from tgl@sss.pgh.pa.us) Received: from sss.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.sss.pgh.pa.us (8.9.1/8.9.1) with ESMTP id NAA15663; Fri, 6 Nov 1998 13:45:13 -0500 (EST) To: Constantin Teodorescu cc: pgsql-hackers@postgreSQL.org, pgsql-interfaces@postgreSQL.org Subject: Re: [INTERFACES] crypt not included when compiling libpgtcl !!!!!!! In-reply-to: Your message of Fri, 06 Nov 1998 15:49:59 +0000 <36431AA7.425FC848@flex.ro> Date: Fri, 06 Nov 1998 13:45:13 -0500 Message-ID: <15661.910377913@sss.pgh.pa.us> From: Tom Lane Constantin Teodorescu writes: > [root@teo libpgtcl]# ldd libpgtcl.so.2.0 > libcrypt.so.1 => /lib/libcrypt.so.1 (0x40014000) > libc.so.6 => /lib/libc.so.6 (0x40041000) > /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00000000) > [root@teo libpgtcl]# ldd ../libpq/libpq.so.2.0 > statically linked Well, that's pretty interesting. Evidently you were able to persuade the linker to dynamically link libpgtcl.so to libcrypt.so, but the patch I suggested did *not* persuade the linker to dynamically link libpq.so to libcrypt.so. Just exactly what change did you make in libpgtcl's Makefile, anyway? I assumed it was simply adding -lcrypt, but now I am not so sure. It's also curious that libpq.so is not showing any dynamic dependency on libc. I think we must have the wrong linker options for libpq. > [root@teo libpgtcl]# vdir ../libpq/libpq.so.2.0 > -rwxr-xr-x 1 root root 50014 Nov 6 10:08 > ../libpq/libpq.so.2.0 > [root@teo libpgtcl]# vdir libpgtcl.so.2.0 > -rwxr-xr-x 1 root root 64725 Nov 6 10:19 libpgtcl.so.2.0 And we also need to figure out why the linker is including libpq.a into libpgtcl.so, instead of creating a dynamic link from libpgtcl.so to libpq.so like it did for libcrypt and libc. (BTW, do you have a libcrypt.a in /lib, or just libcrypt.so?) It seems clear from your ldd results that your machine is capable of doing the right thing, but we aren't invoking the linker with the right options. Where I want to get to is: libpgtcl.so: dynamic dependency on libpq.so (and libc of course) libpq.so: dynamic dependency on libcrypt.so (and libc of course) It might be worth extracting the part of the "make all" log that shows what commands are being used to build each of these libraries. regards, tom lane