has this patched been applied to the CVS yet?
On Tue, 1 Oct 2002, Zeugswetter Andreas SB SD wrote: > Date: Tue, 1 Oct 2002 10:23:13 +0200 > From: Zeugswetter Andreas SB SD <[EMAIL PROTECTED]> > To: Peter Eisentraut <[EMAIL PROTECTED]> > Cc: PostgreSQL Development <[EMAIL PROTECTED]> > Subject: Re: AIX compilation problems (was Re: [HACKERS] Proposal ...) > > > > > Attached is a patch to fix the mb linking problems on AIX. As a nice side effect > > > it reduces the duplicate symbol warnings to linking libpq.so and libecpg.so > > > (all shlibs that are not postmaster loadable modules). > > > > Can you explain the method behind your patch? Have you tried -bnogc? > > -bnogc would (probably) have been the correct switch reading the man page, > but the method was previously not good since it involved the following: > > 1. create a static postgres executable from the SUBSYS.o's > 2. create an exports file from above > 3. recreate a shared postgres executable > > This naturally had a cyclic dependency, that could not properly be > reflected in the Makefile (thus a second make sometimes left you with > a static postgres unless you manually removed postgres.imp). > > Now it does: > postgres.imp: $(OBJS) > create a temporary SUBSYS.o from all $(OBJS) > create a postgres.imp from SUBSYS.o > rm temporary SUBSYS.o > > postgres: postgres.imp > link a shared postgres > > A second change was to move the import and export files to the end of the link line, > then the linker knows not to throw a duplicate symbol warning, and keeps all symbols > that are mentioned in the exports file (== -bnogc restricted to $(OBJS) symbols). > > Thus now only libpq.so and libecpg.so still show the duplicate symbol warnings since >their > link line should actually not include postgres.imp . I did not see how to make a >difference > between loadable modules (need postgres.imp) and interface libraries (do not need >postgres.imp), > but since the resulting libs are ok, I left it at that. > > I tested both gcc and xlc including regression tests. > > Andreas > > ---------------------------(end of broadcast)--------------------------- > TIP 3: if posting/reading through Usenet, please send an appropriate > subscribe-nomail command to [EMAIL PROTECTED] so that your > message can get through to the mailing list cleanly > [EMAIL PROTECTED] (Samuel A Horwitz) ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/users-lounge/docs/faq.html