This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problems with shared lesstif and shared Xt on Cygwin/XFree86


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 ? 

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. 



					Matthieu


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]