Basic API usage

Jan Bruns code at
Mon Sep 7 14:47:42 UTC 2020


 From the perspective of someone with a non-gcc-supported programming 
language preference, I have problems identifying an outline of steps 
required to support wayland from within an application.

For example, from the human readable documentation at, I've learned that wayland communication is 
based on some unix domain socket protocol (similar to X), which would 
probably allow for process separation (with the benefit of avoiding 
problems about things like floating point precision settings, exception 
handling, and so on). However, the xml frequently referenced in the 
documentation doesn't appear to completely define a protocol.

Two Hello-world C examples found on the web both reference the files 
wayland-client-core.h and wayland-client-protocol.h

wayland-client-core.h makes use of very C-specific language constructs 
like "..." in parameter lists. I'm very unsure if the other programming 
language compiler of choice could generate ABI-conformant calls to 
those, in addition to the fact I cannot yet (after just a few hours of 
trying) even name the lib the ABI-tools should link to.

wayland-client-protocol.h was a bit difficult to find. It probably gets 
auto-generated on installing wayland, a step that I didn't try, since 
wayland already was installed here. But I found it in /usr/include.

Could someone please outline how to use the API for the non-gcc case?


Jan Bruns

More information about the wayland-devel mailing list