Proper method for QtMqtt install after compile in QtCreator
-
Specifically for MacOS. I cloned the appropriate branch (6.2.3) from qt/qtmqtt on GitHub and it compiles perfectly in QtCreator.
Since qmake no longer works (v 6.2.3) for these modules, what is the appropriate installation method on MacOS after the cmake process is done building? "sudo make install" is non functional from the shadow build directory.
For MacOS, I was able to manually copy all of the generated files and libraries to their respective places in the file system. However, this is a dangerous way to do this and I really expected there to be some sort of install target from the command line in order to properly get everything in the right places (quiet a few places!!).
Can anyone offer a cmake newb some help here? Really missing qmake!!!
Perhaps am I missing some path settings at the command line in order for it to work?
-
At least for MacOS, I have found the "install" targets in the Build defs in QtCreator. Explicitly checking the "install" target seems to have worked (even though the "all" target was already checked).
For installing QtMqtt for iOS there seems to be some odd path error in a header file for qtmqttclient.h when the library is used in a project after building it. Still working that out, but I really should not be digging around in the innards of pre-built header files. Even though an "INSTALL" target is shown for iOS, when it is selected for the QtMqtt build, cmake complains that there is no such target. Very circular, so I can only hope and believe that it installs it into the Qt ecosystem properly.
-
UPDATE:
The offending header files in the automatically installed "include" folders for the iOS version of QtMqtt are missing part of the path.
Example (but there are about 8-10 files that have this error):
Contents of qmqttclient.h (/Users/login_name/Qt/6.2.3/ios/include/QtMqtt/qmqttclient.h)
#include "../../../qtmqtt/src/mqtt/qmqttclient.h"
Should actually be:
#include "../../../Src/qtmqtt/src/mqtt/qmqttclient.h"
EDIT: This has been reported to the bug list.
EDIT: This allowed a qmake project which uses QtMqtt to function, however, the cmake version of that project is still broken citing that CMake sets a "FOUND" variable to "false", which kills the build, even though there doesn't seem to be a reason to set it to "false". Also reported to bug list.