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


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


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