Wayland入门教程08.05:连接server

系列索引地址:Wayland入门教程索引

上一篇:Wayland入门教程08.04:hello world

根据架构可知,(鼠标、窗口、键盘)操作在客户端,操作完成之后通过socket发送给服务端,那么第一步就是连接服务端。

先来测试代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <wayland-client.h>
#include <stdio.h>

int main()
{
struct wl_display *display = wl_display_connect(0);

if (!display)
{
fprintf(stderr, "Unable to connect to wayland compositor\n");
return -1;
}

wl_display_disconnect(display);

return 0;
}

代码很简单,就是

  • 连接
  • 判断连接是否成功
  • 关闭连接

编译,终端执行

1
make

编译生成程序,执行

1
./connect

没有任何回应(那就对了,Linux下没有回应就是最好的回应)。

但是这对于开发者来说不过友好,因为我不知道这中间有没有什么错误。

所以我们需要一个外部工具来查看信息,就是前面提到的wldbg

执行命令

1
2
hyper@ubuntu:~/Desktop$ wldbg -s
Listening for incoming connections...

可以看到wldbg在等待连接

我们再次执行测试程序

1
./connect

可以看到wldbg立刻停止了运行(连接成功,但是并没有执行什么东西)。

至此第一步算是成功了。

完整代码在Wayland_Freshman下的08.05.connect中。

下一篇:Wayland入门教程08.06:获取全局对象


Wayland入门教程08.05:连接server
https://feater.top/wayland/wayland-connect-to-server/
作者
JackeyLea
发布于
2021年9月27日
许可协议