Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. Correct way to build QTIFW from sources on Linux?

Correct way to build QTIFW from sources on Linux?

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
1 Posts 1 Posters 280 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    shuras109
    wrote on last edited by shuras109
    #1

    Hi there!
    I am trying my best to build QtIFW (and Qt) from sources in docker environment. My goal is to build QtIFW installer which will works out of the box on very old systems. At least on Debian 8. Prebuilt 4.4.1 QtIFW now comes with a bunch of dependencies (mostly xcb libs) and that is exactly the thing I'm trying to avoid here.

    And I almost nailed it. I've compiled Qt with bunch of static libraries, and also compiled QtIFW. And in the end it almost working.
    I have the binaries. I got my installer created. It launching without a problem on an old system. But ElevatedOperations I am using in component scripts works unstable. Sometimes operation work and sometimes I see error window about failed operation and "Cannot start: <cmd>" error in the installer logs.

    This error must be a bug which active only in my build and doesn't manifest itself in Qt company builds. I'm not sure I will be able to find the bug itself so I am interesting in attempt to change build configuration itself.

    I find this piece of documentation:
    https://doc.qt.io/qtinstallerframework/ifw-getting-started.html
    but it recommends to build Qt for QtIFW next fashion:

    configure -prefix $PWD/qtbase -release -static -accessibility -qt-zlib -qt-libpng -qt-libjpeg -qt-pcre -no-glib -no-cups -no-sql-sqlite -no-qml-debug -no-opengl -no-egl -no-xinput2 -no-sm -no-icu -nomake examples -nomake tests -no-libudev
    

    At least -no-xinput2 parameter not valid for Qt 5.15.2 so I'm not sure this config is valid. Or maybe I am missed something here.

    My current build for Qt 5.15.2 consists of this modules:
    qtbase qtwayland qtdeclarative qttools qttranslations
    and configured this way:

    ./configure -prefix "$QT_PREFIX" \
      -release \
      -commercial \
      -confirm-license \
      -xcb \
      -libproxy \
      -accessibility \
      -qt-zlib \
      -qt-libpng \
      -qt-libjpeg \
      -qt-pcre \
      -qt-harfbuzz \
      -no-glib \
      -no-cups \
      -no-sql-sqlite \
      -no-qml-debug \
      -no-opengl \
      -no-egl \
      -no-sm \
      -no-icu \
      -no-libudev \
      -openssl-linked \
      -I "$OPENSSL_PREFIX/include" \
      OPENSSL_LIBS="$OPENSSL_PREFIX/lib/libssl.a $OPENSSL_PREFIX/lib/libcrypto.a -lz -ldl -lpthread" \
      XCB_LIBS="-L/usr/local/lib -lxcb -lXau" \
      LIBPROXY_LIBS="-lproxy -ldl" \
      -static \
      -nomake examples \
      -nomake tests \
    

    So my question is: Is there a place to find better config for configuration of Qt to build with (or maybe config which used by Qt company itself)?

    1 Reply Last reply
    0

    • Login

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Get Qt Extensions
    • Unsolved