Qt Installer Framework tutorial not working



  • Hi. I recently found the Qt installer framework and a tutorial ( http://doc.qt.nokia.com/qtifw-1.2/ifw-tutorial.html ).
    But it doesn't work for me. When I try to run:

    @
    cd examples/tutorial
    ../../bin/binarycreator -c config/config.xml -p packages YourInstaller com.vendor.product
    @

    The program prints
    @
    Error: You are using an old syntax please add the component name with the include option
    @

    Another question: How to install the framework? "make install" doesn't install to /usr/bin or /usr/lib, I copied manually.



  • The syntax has changed:

    @
    ../../bin/binarycreator -c config/config.xml -p packages/ YourInstaller --include com.vendor.product
    @

    You should first generate the translation files.

    @
    cd packages/com.vendor.product/meta
    lrelease de_de.ts
    @



  • I've overcome this problem by building the installer as a static library (adding "CONFIG += staticlib" to the pro file), however my installers all crash right after the start on Mac (both with a static and shared installer lib), here's the stacktrace:

    @Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
    0 libsystem_kernel.dylib 0x00007fff8fe1dce2 __pthread_kill + 10
    1 libsystem_c.dylib 0x00007fff992297d2 pthread_kill + 95
    2 libsystem_c.dylib 0x00007fff9921aa7a abort + 143
    3 com.yourcompany.installerbase 0x0000000100817725 qt_message_output(QtMsgType, char const*) + 149
    4 com.yourcompany.installerbase 0x00000001008178dd _ZL10qt_message9QtMsgTypePKcP13__va_list_tag + 381
    5 com.yourcompany.installerbase 0x0000000100817afd qFatal(char const*, ...) + 141
    6 com.yourcompany.installerbase 0x0000000100196c0a qt_init(QApplicationPrivate*, int) + 2218
    7 com.yourcompany.installerbase 0x00000001001f8006 QApplicationPrivate::construct() + 182
    8 com.yourcompany.installerbase 0x00000001001f8dfd QApplication::QApplication(int&, char**, int) + 95
    9 com.yourcompany.installerbase 0x000000010000c96f MyApplication::MyApplication(int&, char**) + 25
    10 com.yourcompany.installerbase 0x0000000100005729 main + 2409
    11 com.yourcompany.installerbase 0x0000000100004d94 start + 52@

    Anyone with a hint what's going wrong?

    Thx



  • Ok, I found out that the qt_menu.nib file is missing, however after I copied it manually in the Resources dir of the installer app bundle it's still crashing:

    @QCoreApplication::applicationFilePath: Please instantiate the QApplication object first
    Error-Exception: "Could not open binary : No file name specified"
    Could not open binary : No file name specified@

    So I guess the installer framework is quite broken for Mac OS X :-/


  • Moderators

    Just a random thought, as I do not know QFiW. But there is a nice tool for creating app bundles on Mac: macdeployqt. It makes self-contained packages (including copying qt_menu.nig automatically).



  • Thanks for the hint sierdzio, in my case I really need the installer (for deploying my own custom library and not a single application) for all three platforms, so the deploy tool is no solution for me.

    I currently "re-use" the Qt Maintenance tool which is working fine at the moment, so I don't need to compile the ifq on my own.



  • As the maintainer of the installer framework I like to know if there is something broken. PLEASE create bugreports: https://bugreports.qt-project.org/browse/QTIFW .

    And a crash is a blogger so choose P0 if you still can reproduce it with master.



  • Thanks for the hint to the bug tracker, after some investigation it turned out that this is a general Qt bug, involving static building of the Qt libraries itself: https://bugreports.qt-project.org/browse/QTBUG-5952


Log in to reply
 

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