如何建设qtwayland?

How to build qtwayland?

我花了一整天的时间尝试在 Qt Creator 中使用 QtWayland.Compositor 1.0。我已按照 https://wiki.qt.io/QtWayland 中的所有步骤进行操作,但出现以下错误。不知道什么意思,那是我第一次接触linux。我在虚拟机上有最新的 linux mint。

$ sudo make install
cd src/ && ( test -e Makefile || /usr/lib/x86_64-linux-gnu/qt5/bin/qmake /home/emil/wayland/qtwayland/src/src.pro -o Makefile ) && make -f Makefile install
make[1]: Entering directory '/home/emil/wayland/qtwayland/src'
make[1]: Nothing to be done for 'install'.
make[1]: Leaving directory '/home/emil/wayland/qtwayland/src'
cd examples/ && ( test -e Makefile || /usr/lib/x86_64-linux-gnu/qt5/bin/qmake /home/emil/wayland/qtwayland/examples/examples.pro -o Makefile ) && make -f Makefile install
make[1]: Entering directory '/home/emil/wayland/qtwayland/examples'
cd wayland/ && ( test -e Makefile || /usr/lib/x86_64-linux-gnu/qt5/bin/qmake /home/emil/wayland/qtwayland/examples/wayland/wayland.pro -o Makefile ) && make -f Makefile install
make[2]: Entering directory '/home/emil/wayland/qtwayland/examples/wayland'
Some of the required modules (qtHaveModule(waylandcompositor) qtConfig(opengl)) are not available.
Skipped.
make[2]: Leaving directory '/home/emil/wayland/qtwayland/examples/wayland'
make[1]: Leaving directory '/home/emil/wayland/qtwayland/examples'

我该如何解决?我想做的就是 运行 Qt 安装的例子 :c.

wiki 页面上的大部分内容都是多年前写的。我努力清理我知道不再相关的东西,并希望让 wiki 页面处于可用状态。

我看到的问题是,构建 Qt 的方法有很多,而如何构建 QtWayland 取决于此。

两个最常见的选项:

构建 QtWayland 作为完整(或顶层 Qt 构建)的一部分

配置Qt时,可以在配置行添加-feature-wayland-server。它将确保 wayland 合成器 API 是您 Qt 构建的一部分。如果不满足 QtWayland 的依赖关系,配置将失败。 IE。如果您需要 Wayland 的开发包。

然后你可以只 运行 make 它将构建你配置的所有 Qt,或者 运行 make module-qtwayland 应该只构建 QtWayland 和所需的依赖项(qtbaseqtdeclarativeqtxmlpatterns)。

针对现有 Qt 安装(没有 QtWayland)构建 QtWayland

首先您需要找到您想要的 Qt 版本的 qmake。如果它是由系统提供的,它通常已经在您的 PATH 中了。如果您打算使用 Qt 安装程序提供的 Qt,它通常在 ~/Qt/5.10.0/gcc_64/bin/qmake 或适合您的版本和体系结构的等效版本。

克隆 qtwayland

git clone git://code.qt.io/qt/qtwayland.git
cd qtwayland
git checkout v5.10.0 #or whatever version your qmake reports

使用 qmake 配置

qmake

~/Qt/5.10.0/gcc_64/bin/qmake

您现在应该看到:

Qt Wayland Client ........................ yes
Qt Wayland Compositor .................... yes

在您的终端中,否则您可能缺少一些依赖项。

使用 make 构建

make
make install

构建示例

根据您的配置,这可能需要 运行 明确:

make sub-examples