Nominate our 2022 Qt Champions!

Always compile sql drivers as plugins

  • Hi,

    my reference is:

    author Lars Knoll 2016-03-18 13:35:40 +0100
    committer Lars Knoll 2016-04-07 09:08:53 +0000
    commit 0452c25aedb7d2778e5b26fad924ed61b72bbe33 (patch)
    tree 7abfae2cc219e549089f0aead346c9b159decbaa /src/sql/kernel/qsqldatabase.cpp
    parent 00ca784be60cb38dcb342755f602edc929805ce4 (diff)
    Always compile sql drivers as plugins
    Compiling the drivers into Qt Sql does not make a lot of sense
    anymore, as we handle plugins well enough in the build system
    these days.

    [ChangeLog][Build system] SQL drivers are now always compiled as plugins.


    I was porting from Qt5.5.1 to Qt5.10.0 my mobile and embedded applications. These applications make intensive use of services that load from native java .so as parts of Qt.
    In particular, in the android environment, these services start under certain conditions by loading the .so of qt for execution ( much more complex than the qt implementation of android services ). The services is started without the main application start ( a normal case ), plugins are not initialized even if Qt is fully functional ( sql part ).
    By linking the plugins in a static way, the execution is correct and the driver work fine.

    I do not understand the reason of that modification. That commit creates a technical limitation,
    the sql part can only work within qt context with a correct plugin initialization, and it is not always said that I can do or that it is legitimate to make a qt context (as in the case of services).

  • Lifetime Qt Champion

    I would ask the devs directly

    This is a user forum and the devs are not monitoring it.

Log in to reply