[Development] 6 conflicting symbols between QtQuick 1 and 2
Knoll Lars
Lars.Knoll at digia.com
Tue Apr 23 13:49:10 CEST 2013
Hi Harri,
having the symbols clash is not a good idea in any case, so please go
ahead and rename one set. I'd go for changing the ones in Qt Quick 1.
Cheers,
Lars
On 4/23/13 1:04 PM, "Harri Porten" <porten at froglogic.com> wrote:
>Hi!
>
>Don't ask why but we ran into the known[1] segfault caused by symbol name
>conflicts between Qt5Qml and Qt5Declarative. Checking the symbol tables
>it
>appears to because by 6 symbols only:
>
> qmlContext(QObject const*)
> qmlExecuteDeferred(QObject*)
> qmlAttachedPropertiesObject(int*, QObject const*, QMetaObject const*,
>bool)
> qmlAttachedPropertiesObjectById(int, QObject const*, bool)
> qmlInfo(QObject const*)
> qmlEngine(QObject const*)
>
>At least for non-VS compilers the partially different return types (QQml*
>vs. QDeclarative*) don't help with having a different symbol name
>mangling. At the same time the functions cannot be used interchangeably
>either. So I assume that this conflict was a simply copy&paste oversight
>during the porting.
>
>I have not checked the respective use cases of the functions but I guess
>that they are internal to Qt despite being exported? Anyone sees a
>problem
>with renaming the functions of v1 or v2 to make their names unique? If
>not, we'll prepare a patch and present it.
>
>To stress one point: we are not attempting to run both types of GUIs in a
>single application. We'd just like to have the possibility to have the
>two
>libraries co-exist and optionially be used.
>
>Harri.
>
>[1] https://bugreports.qt-project.org/browse/QTBUG-29584
>
>
>_______________________________________________
>Development mailing list
>Development at qt-project.org
>http://lists.qt-project.org/mailman/listinfo/development
More information about the Development
mailing list