> -Original Message-
> From: Bruce Momjian [mailto:[EMAIL PROTECTED]]
> Sent: 10 February 2001 05:46
> To: PostgreSQL odbc list; PostgreSQL-patches
> Cc: PostgreSQL-development
> Subject: [PATCHES] Fix for ODBC close
>
>
> I have applied the following patch to properly exit ODBC.
I
[EMAIL PROTECTED] wrote:
> I have applied the following patch to properly exit ODBC. I also
> patched the ODBC makefile so it links under BSD/OS. The -Bsymbolic
> under BSD/OS is very harsh under BSD/OS, requiring all symbols even in
> libc and crt1.o to be resolved before creating the shared l
> Bruce Momjian writes:
>
> > I have applied the following patch for OpenBSD and FreeBSD. They have
> > the same -Bsymbolic handling and same use of LD for linking. I made the
> > duplicate changes Peter made for BSDI.
>
> Hmm, at least on OpenBSD the recommended way to build shared libraries
Bruce Momjian writes:
> I have applied the following patch for OpenBSD and FreeBSD. They have
> the same -Bsymbolic handling and same use of LD for linking. I made the
> duplicate changes Peter made for BSDI.
Hmm, at least on OpenBSD the recommended way to build shared libraries is
using 'ld'
> > -Bsymbolic requires all symbols in the library to be resolvable at link
> > time. If you use 'ld' then you will need to provide all the appropriate
> > files yourself. The compiler driver normally does that automatically.
> >
>
> Great. I see you modified Makefile.bsdi to properly know it
> You can't hardcode "gcc" like that. I've committed some fixes that should
> work for you. Please try them out. Also try to build libpq++.
>
> > It seems the -Bsymbolic needs the gcc, while other links are OK with ld.
> > We may find this is true on many platforms.
>
> -Bsymbolic requires al
Bruce Momjian writes:
> I replaced the 'ld' with 'gcc -Wl', and that prevents the need for the
> crt1.o.
>
> It still requires -lc:
>
> ifneq ($(PORTNAME), bsdi)
> LINK.shared += $(shlib_symbolic)
> else
> LINK.shared = gcc -shared -Wl,-Bsymbolic,-soname,$(soname)
>
> Bruce Momjian writes:
>
> > I just tried gcc and got:
> >
> > #$ gcc -shared -soname libpsqlodbc.so.0 -Bsymbolic info.o bind.o
> > columninfo.o connection.o convert.o drvconn.o environ.o execute.o lobj.o
> > misc.o options.o pgtypes.o psqlodbc.o qresult.o results.o socket.o
> > parse.o statemen
Bruce Momjian writes:
> I just tried gcc and got:
>
> #$ gcc -shared -soname libpsqlodbc.so.0 -Bsymbolic info.o bind.o
> columninfo.o connection.o convert.o drvconn.o environ.o execute.o lobj.o
> misc.o options.o pgtypes.o psqlodbc.o qresult.o results.o socket.o
> parse.o statement.o gpps.o tuple
> Bruce Momjian writes:
>
> > > The -Bsymbolic switch is the same on all platforms that have it. You can
> > > link without it, but then you won't actually be able to use the ODBC
> > > driver. It seems like you need to link in a few other libraries to
> > > resolve all symbols.
> >
> > OK, if
Bruce Momjian writes:
> > The -Bsymbolic switch is the same on all platforms that have it. You can
> > link without it, but then you won't actually be able to use the ODBC
> > driver. It seems like you need to link in a few other libraries to
> > resolve all symbols.
>
> OK, if this is true on
> Bruce Momjian writes:
>
> > I have applied the following patch to properly exit ODBC. I also
> > patched the ODBC makefile so it links under BSD/OS. The -Bsymbolic
> > under BSD/OS is very harsh under BSD/OS, requiring all symbols even in
> > libc and crt1.o to be resolved before creating the
Bruce Momjian writes:
> I have applied the following patch to properly exit ODBC. I also
> patched the ODBC makefile so it links under BSD/OS. The -Bsymbolic
> under BSD/OS is very harsh under BSD/OS, requiring all symbols even in
> libc and crt1.o to be resolved before creating the shared libr
13 matches
Mail list logo