【问题标题】:Where do I start if I want to write a wayland compositor?如果我想写一个 Wayland 合成器,我应该从哪里开始?
【发布时间】:2014-07-25 16:30:38
【问题描述】:

我想网络上没有“Wayland 服务器编程初学者指南”,而且 Weston 的源代码看起来令人生畏。

是否有一个准系统的 Wayland 服务器可以让我知道从哪里开始?我可以在 X 下运行的东西我可以确认正在接收输入。我确定我可以从那里出发。

【问题讨论】:

  • 也许你可以看看 Wayland glx-dock.org/mr_article.php?b=5&a=73 的 Cairo Dock 源代码。只是一个想法。
  • 这个问题的已删除答案之一是指向 Jan Newmarch 所著的 Programming Wayland Clients 一书的链接:jan.newmarch.name/Wayland/index.html 目前我经历了艰难的时刻试图进入这个领域,但我希望这本书最终会有所帮助。
  • 我只是想问同样的问题。真的应该有一个初学者指南来编写一个 Wayland 合成器,它会让事情变得更加有趣(大量的业余开发者会蜂拥而至创建自己的 Wayland 合成器,看看哪些人会在结束;甚至可能超过 gnome 和 kde 的受欢迎程度)

标签: wayland


【解决方案1】:

看看Small Wayland Compositor。如果您想从头开始,您可以将它用作库来构建,或者查看它的内部工作方式。

【讨论】:

【解决方案2】:

我写了一个在 X11 之上运行的 minimal wayland compositor,希望它对其他想要学习如何编写 Wayland 合成器的人有用。
大约 500 行代码实际上只是托管多个 weston-terminal 实例并移动它们所需的最少代码。

【讨论】:

  • 这正是我想看到的,虽然我不只是希望它在 X 中运行,但它确实可以运行(还没有机会尝试编译和运行它),我希望它能够在没有它的情况下运行。如果它运行,这正是我想要的 :) 一个漂亮的简短的大约 500 行代码,它并没有做太多,但可以作为一个起点。越短越好。
  • 如果您在运行它时遇到任何问题,请告诉我。编写原生后端仍然在我的待办事项清单上,但它会比 X11 后端复杂一些。
  • 哦,所以它没有原生后端 :( 那时我可能不会尝试它。但是当你有原生后端时请告诉我!
  • @Cestarian 我也有一个~150 LOC example,关于如何在没有任何显示服务器的情况下使用 OpenGL,但这可能不是您想要的:)
  • 根目录下的wayland* 文件看起来也很有趣(github.com/eyelash/tutorials)
【解决方案3】:

我只能推荐看看KWayland sources(特别是如果您对 Wayland 协议如何映射到面向对象的世界感兴趣)。
KWayland 是一个面向对象 (C++/Qt) 的 Wayland 客户端和服务器库包装器,它还包括一个最小的服务器 (tests/renderingservertest.cpp)。

【讨论】:

    猜你喜欢
    • 2011-04-01
    • 1970-01-01
    • 2011-09-28
    • 2011-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-01
    相关资源
    最近更新 更多