How to fix qcollectiongenerator in static Qt 5.8.0?



  • I built qt-everywhere-opensource-src-5.8.0 with -static option under macOS.

    When I executed qcollectiongenerator I got this error:

    This application failed to start because it could not find or load the Qt platform plugin "minimal"
    
    in "".
    
    Available platform plugins are: cocoa.
    
    Reinstalling the application may fix this problem.
    

    Then I add QTPLUGIN.platforms = qminimal to qcollectiongenerator.pro and recompiled static Qt.

    Now the execution of qcollectiongenerator prints this error:

    QSqlDatabase: QSQLITE driver not loaded
    QSqlDatabase: available drivers:
    

    I have 2 questions about this.

    How to fully fix qcollectiongenerator in staticaly linked Qt?

    Is it possible to re-build single static plugin without rebuilding of Qt?


  • Lifetime Qt Champion

    Hi,

    What exact options did you pass to configure ?



  • Exactly this command:

    ./configure -opensource -confirm-license -release -static -debug-and-release c++14 -openssl-linked -L/Developer/Qt/qt-deps/openssl-1.0.2k/dist/lib -I/Developer/Qt/qt-deps/openssl-1.0.2k/dist/include -icu -L/Developer/Qt/qt-deps/icu/dist/lib -I/Developer/Qt/qt-deps/icu/dist/include -opengl -nomake examples -prefix /Developer/Qt -recheck-all
    

  • Lifetime Qt Champion

    You should check the How to insert image on this forum. thread.



  • @SGaist Why? I don't need to post any image.


  • Lifetime Qt Champion

    Because there's been some gremlins around :D That answer was meant for another thread, I don't know why it ended up here.

    In your case, that configure line doesn't work e.g. c++14 is not an option for configure. Also (unless it changed recently) the -L and -I options should have a space between them and the path (contrary to when you give these options to the compiler/linker respectively)



  • @SGaist

    Sorry, I missed the key before c++14.

    fixed line:

    ./configure -opensource -confirm-license -release -static -debug-and-release -c++std c++14 -openssl-linked -L/Developer/Qt/qt-deps/openssl-1.0.2k/dist/lib -I/Developer/Qt/qt-deps/openssl-1.0.2k/dist/include -icu -L/Developer/Qt/qt-deps/icu/dist/lib -I/Developer/Qt/qt-deps/icu/dist/include -opengl -nomake examples -prefix /Developer/Qt -recheck-all
    

    I have no problem with compilation finishing. And I have no problems when build my project binary on this static Qt.

    When I ran this configure line it printed me icu yes and openssl yes, no configure errors.

    You think that "QSQLITE driver not loaded" error because of no spaces between -L options and their values?


  • Lifetime Qt Champion

    Static build of Qt means that you need additional handling for plugins. See here.



  • @SGaist of course I do this in my project file.

    My question is about a qt tool binary file. Qt compiling generate a bunch of it's tools one of them I want to use. When static option is enabled qcollectiongenerator need some static plugins in it's pro-file but it have no.

    I just run qcollectiongenerator help.qhcp -o help.qhc in command line and get this error. Without any touch of compiling my project.


  • Lifetime Qt Champion

    Did you call make install after you built Qt ?


Log in to reply
 

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