How to turn off major portions of Qt?

  • This is somewhat of a followup to an earlier post but it's a bit more general.
    I'm attempting to cross-compile Qt Everywhere 4.8.4 for an ARM system that has no GUI. I'm trying various things in ./configure and make to strip it down to eliminate WebKit and QtGUI but I'm not making much progress. The last attempt was

    ./configure -embedded arm -xplatform linux-arm-gnueabi-g++ -prefix /mydir/QtTest -little-endian -no-opengl -no-mouse-linuxtp -no-kbd-linuxinput -no-gfx-linuxfb -no-webkit

    followed by:

    make sub-src

    That craps out trying to build qmnghandler.cpp saying qcolor.h doesn't exist. So did I not turn off something? Any other suggestions?

  • Lifetime Qt Champion


    You need to add -no-gui

    Look at configure --help, you'll see all what you can disable

    Hope it helps

  • You can use qconfig which can be compiled from the tools directory. Then you can easily remove features you don't need for smaller Qt libraries.

  • That's a bit of a Catch-22 though. I'm attempting to cross-compile the libraries. So if I built qconfig, after running /configure and make, I'd be building qconfig for my ARM system. I guess I could build everything twice and just move the qconfig executable somewhere safe during the second pass. Kinda sucks that there isn't a make menuconfig method for doing this.

    But I have managed to build the libraries and run a simple QTimer-based hello world on the ARM system.

  • No, qconfigure is built using the standard windows Qt libraries. You then use it to set up a configuration file for your cross compile. It is in the Qt docs under the tuning heading for windows ce installation.

Log in to reply

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.