Problems with shared lesstif and shared Xt on Cygwin/XFree86

Harold L Hunt II huntharo@msu.edu
Tue Oct 28 01:07:00 GMT 2003


Matthieu,

Matthieu Herrb wrote:

> Torrey Lyons wrote (in a message from Saturday 25)
>  > The issue on Mac OS X is that most shared libraries want to be built 
>  > as "two-level namespace" images. Two-level namespace images have 
>  > significant advantages in loading speed, but they require that they 
>  > have no unresolved symbols when linking the library. This is why the 
>  > darwinLib.tmpl contains a complete list of every library's 
>  > dependencies. Unfortunately this causes a problem with two shared 
>  > libraries, Xt and Xfont. The problem is that these libraries are 
>  > designed to have certain symbols undefined and to have theses 
>  > references resolved at application link time by one of various other 
>  > library choices. In the case of Xt, SM and ICE provide the default 
>  > resolution of these symbols in darwinLib.tmpl (and cygwin.tmpl), but 
>  > symbols with the same names from lesstif should be used instead when 
>  > the application is linked with it. Two-level namespace libraries 
>  > don't allow you to do that since all symbols get resolved at library 
>  > link time, not application link time. Thus we fixed this problem by 
>  > building libXt and libXfont as flat namespace images, which have the 
>  > same linking semantics that most people on other *nixes are used to.
> 
> Weak symbols can be used on systems that support them to solve this
> kind of issues. Does cygwin support them ? 

That sounds like a good idea... but I don't know that answer about 
whether we support them or not.

> If so libXt and libXfont can be patched to provide weak definitions of
> the SM/ICE functions it needs instead of linking libXt against those
> libs. 

That would be nice, if Cygwin support them.  I will try to find out.


Thanks for your input,

Harold



More information about the Cygwin-xfree mailing list