From: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
---|---|
To: | PostgreSQL Development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Shared library interdependencies |
Date: | 2000-06-15 16:14:39 |
Message-ID: | Pine.LNX.4.21.0006151624180.399-100000@localhost.localdomain |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
When the libpq shared library is linked on my system it looks like this:
ld -Bdynamic -shared -soname libpq.so.2.1 -o libpq.so.2.1 fe-auth.o
fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o pqexpbuffer.o
dllist.o pqsignal.o -lcrypt -lc
Now if I build a Kerberos IV enabled version it looks like
ld -Bdynamic -shared -soname libpq.so.2.1 -o libpq.so.2.1 fe-auth.o
fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o pqexpbuffer.o
dllist.o pqsignal.o -lcrypt -lkrb -ldes -lc
Note that the relevant Kerberos libraries are specified so the user
doesn't have to remember linking his libpq programs against Kerberos.
My question is, shouldn't libpq be linked against *all* the libraries that
are detected at configure time? Imagine that libpq uses something from,
say, -lbsd. We'd never know because psql links against -lbsd so everything
is resolved but the end user may not know that and fail to link his
programs against -lbsd. I guess what I'm saying is, there seems to be a
double standard of -lcrypt, -lc, -lkrb, and -ldes versus all other
libraries.
Any library guru care to enlighten me?
--
Peter Eisentraut Sernanders väg 10:115
peter_e(at)gmx(dot)net 75262 Uppsala
http://yi.org/peter-e/ Sweden
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Harvey | 2000-06-15 16:17:10 | Re: [unixODBC-DEV] - Re: [HACKERS] info on unixODBC/Postgres driver port to IRIX 6.5.7 64bit |
Previous Message | Trond Eivind=?iso-8859-1?q?_Glomsr=F8d?= | 2000-06-15 16:14:32 | Re: Re: Mandrake RPMS, was "Building PostgreSQL 7.0.1 documentation" |