This is the mail archive of the
cygwin-xfree@cygwin.com
mailing list for the Cygwin XFree86 project.
RE: [XFree86-4.2.0] Now that we have an improved ld, please make libXt a shared library.
- From: "Ralf Habacker" <Ralf dot Habacker at freenet dot de>
- To: <cygwin-xfree at cygwin dot com>
- Date: Fri, 1 Aug 2003 00:45:52 +0200
- Subject: RE: [XFree86-4.2.0] Now that we have an improved ld, please make libXt a shared library.
- Reply-to: cygwin-xfree at cygwin dot com
> The solution used with sun does not work too. The link a function _XtInherit
> staticly to each library but inside the different libraries the symbols
> map to different addresses and are not equal.
>
> The only solution I see is the usage of a constant value.
What about the following:
Each imported symbol creates a stub like
_XInherit:
jmp (*xyz)
where xyz is the address of the image allocation table, in which the address of
the real function address is stored.
So using *(long *)((long)_XInherit+2) in a client dll for comparing gives the
real function address.
BTW: This seems to be a very hard stuff
Ralf