libXdmcp is not ready for Windows

Jon TURNEY jon.turney at dronecode.org.uk
Thu Apr 21 05:49:26 PDT 2011


On 21/04/2011 13:12, Vincent Torri wrote:
> On Thu, 21 Apr 2011, Jon TURNEY wrote:
>> On 18/04/2011 08:00, Vincent Torri wrote:
>>> libXdmcp is configured for a Windows build, but:
>>>
>>>  * recvfrom is defined in ws2_32, which is not passed to linker flags
>>>  * WSAStartup is not called
>>>
>>> i guess that, actually, libXdmcp is not really maintained for Windows
>>
>> It works fine for cygwin, as socket functions are provided by the cygwin1.dll.
>>
>> I guess that it also works fine using mingw when built as a static library and
>> statically linked into an application which calls WSAStartup(), which is how I
>> think it is used by XMing.
> 
> ok, so the usual use of X libraries on Windows is to statically link the lib
> to the app.

No, that's not what I'm saying at all (and would be terrible advice).

The use cases above are the only ones which the maintainers use, so that's all
that can be expected to be working.

If you need a shared, native libXdmcp, you've gone off the edge of the map and
you'll need to find your own way :-)

> Note that passing -lws2_3 is not sufficient. Libs.private must have -lws2_32
> too so that static linking is correctly done when using pkg-config.
> 
>> If you want to provide a patch to add an appropriate AC_HAVE_LIBRARY(ws2_32),
>> that would be great, but without knowing what you are trying to do,
> 
> use it with libxcb. libXdmcp is optional in libxcb, though.

I think it unlikely you have a client which actually needs to use XDMCP, so
omitting it may be no great hardship.

>> I don't
>> know if that is actually going to fix your problem. (Note that any application
>> which you try to build Win32 native is going to need to know that Winsock
>> socket handles aren't interchangeable with file descriptors...)


More information about the xorg-devel mailing list