我花了整整一天的时间尝试在Qt Creator中使用QtWayland.Compositor 1.0。我从那里开始按照https://wiki.qt.io/QtWayland的所有步骤进行操作,但是出现以下错误。我不知道这是什么意思,那是我第一次接触linux。我在vm上有最新的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的依赖性,则配置将失败。即如果您需要Wayland的开发包。

然后,您既可以运行make来构建您配置的所有Qt,也可以运行make module-qtwayland来仅构建QtWayland和所需的依赖项(qtbaseqtdeclarativeqtxmlpatterns)。

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

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

克隆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

关于linux - 如何建立Qtwayland?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42352743/

10-09 15:39