I have designed a QT application with an embedded Root Canvas in i t. It works well on my system where I developed (with Qt 4 and Root 5.21). Now, I need to send this application to another person who has installed root on his machine, who will just test the application (but will not do any coding). It does not work there. It complains of missing the libGqt.so library. What does he need on his machine? Does he need Qt to be installed on his machine or only the QT extension (Qt Layer) or Both?.
Lack of that library on the target platform means the person has installed ROOT with no Qt support.
The short answer is, “Ask the person to fix the ROOT installation or complement it with QtRoot layer”.[quote=“dsmcc”]What does he need on his machine? Does he need Qt to be installed on his machine or only the QT extension (Qt Layer) or Both?. [/quote] Both
libGQt is the QT-based implementation of ROOT interface (ROOT plugin) between ROOT and low level graphical layer.
Your application to work needs ROOT and Qt to be installed and some sort of layer to allow the components communicate each other.
There is the thin (Qt-layer) interface and the thick one (QtRoot), The later includes the former.
As soon as your software distribution / installation is concern I would recommend to develop some kind of the “install script”. You can use INSTALL_QTROOT.sh as a pattern. Remove the redundant pieces (for example, windows and coin3d related) and complement it with your own software installation. This way you will make sure your customer will use exactly the same versions of all components (think about the missed libGQt.so) you designed, built, debugged, and tested your application against of. It will save you huge amount of time in future.
On the other hand take in account both major packages ROOT as well as Qt contain a bunch of subsystems those your concrete application may not needed and one may not install it. Usually it doesn’t worth spending time to create such “short” installation. Normally, it is cheaper and faster to install the full-fledge versons.