使用最新的QT编译libwebsocket

时间:2019-02-21 04:06:59

标签: qt compiler-errors compilation

似乎libwebsocket是唯一一个Qt不附带的库,所以我认为我需要编译它并将其安装在QT文件夹中,以便可以与其他东西一起使用。

我尝试编译libwebsocket,但出现此错误:

qwebsocket_p.h:65:10: fatal error: private/qobject_p.h: No such file or directory
 #include <private/qobject_p.h>

我相信这是因为我系统中的QT很旧。我的主文件夹中安装了QT。我应该如何将其传递给websocket?

如果与cmake在一起,我会有一个主意,但是我在这里https://stackoverflow.com/a/49108604/10116440听说过,您无法将qt文件夹传递给qmake。有办法通过吗?

我也尝试在cmake中这样做:

find_package(Qt5WebSockets REQUIRED)
find_package(Qt5 COMPONENTS Core Qml Quick Svg)

这样,我可以cmake -DQt5_DIR=/home/lz/Qt5.11.2 .为除Qt5WebSockets以外的所有内容设置Qt5变量,但是该项目无论如何都无法包含<QWebSocket>。如果有人知道如何解决这个问题,那也很好

1 个答案:

答案 0 :(得分:1)

  

private / qobject_p.h:没有这样的文件或目录

这意味着包含qobject_p.h的目录未添加到“包含路径”列表中。确保您的.pro具有QT += core-private字符串。

  

我的主文件夹中安装了QT。我应该如何将其传递给websocket?

将名为qt.conf的文件放到包含qmake.exe的目录中就足够了:

  

qt.conf

[Paths]
Prefix = <qt root>