What is the minimal approach to build only qhelpgenerator from source (5.15)?
-
Hi,
I am going crazy while trying to build the qhelpgenerator binary from source.
I build Qt from source inside a docker image to use as build environment in my ci. The configuration that I used for 3 years was reduced to increase build time and produce everything I need for my environment:
../configure -nomake examples -no-gui -no-eglfs -skip wayland -skip qt3d -skip qtquick3d -skip webview -skip qtwebengine -opensource -confirm-license
That build takes my ci about 12 minutes to finish.
When I use that resulting environment to build my application code, I get a set of code documentation from doxygen which provides a *.qhp file which I then need to pass through qhelpgenerator to finally get a qhc file which I then can load in qtcreator.
However, the qhelpgenerator tool is not buiilt using the above configuration.
From all my findings in the last few days I conclude that it is apparently not possible to get a qhelpgenerator binary that matches my environment unless I omit the no-gui option when I configure the build.
I need to build qtbase with all the gui overhead to be able to build qt assistant which then gives me a qhelpgenerator binary.
The issue with that is that the build takes really long and produces a whole lot of unneeded libs and binaries.
So I am looking for a solution how to get qhelpgenerator built with minimal dependencies.
Any tips how to achieve that?
-
The qhelpgenerator output isn't specific to a particular Qt platform. I also haven't seen any problems using an earlier 5.15.x build with later 5.15.x QHelpEngine runtimes. My solution has been to create a static build, and copy the executable to the build system.
-
@devjb
qhelpgenerator
is built withassistant
. Both assistant and qhelpgenerator depend onhelp
which, in turn, depends on the Qt gui and widgets modules.So, in short, you cannot without hacking on Qt sources. I don't see the point anyway; you are saving, say, a few minutes every few months when Qt is updated.
-
The qhelpgenerator output isn't specific to a particular Qt platform. I also haven't seen any problems using an earlier 5.15.x build with later 5.15.x QHelpEngine runtimes. My solution has been to create a static build, and copy the executable to the build system.
-
I am more experiencing an increase of two hours in build time than just a few minutes. And that is with 20 parallel jobs.
I would not care about a few minutes.
Anyway, I now for the sake of simplicity went by installing the qhelpgenerator binary standalone from the base systems package management and use that instead.
Similar to using @jeremy_k approach.
-
-
-
I don't understand why someone has to recompile Qt everytime he wants to compile it's own application though.