We working on a bigger QT project with several programmers. We using a modular concept, with a framework (.exe) and several modules(.dll) that even can display their own windows (QWidgets, and the mainwindow from the .exe is the parent).
We also using the QT ressource concept (.qrc files).
Now, we wonna have Icons as static part (static linked) in the modules, that will be shown as part of several dialogs in the framework. So we exporting the icons as QIcons over our interfaces (i.e: long AddDevice(const QIcon & ico, const QString & DeviceName); callback from the module to the exe ... ).
If we compiling the .exe and the .dll with the same compiler settings (debug symbols or not) its just work. But if we have the framework and the modules compiled with different settings (framework as release, module as debug) we getting runtime assertions in the crt. (as soon as we wonna show the icon, in a list view for example)
Thats only happens, if we using the QIcons from the resources. It works fine without them, even if we using Interfaces that exporting QWidgets, QStrings and QDomNodes.
Its uncomfortable, because we need 2 complete different setups of our program ... and every developer have to deliver booth versions (release + debug) that the other developers can debug their own modules ....
DO anyone have the same problems ?
Is there a workauround to prevent the assertions ?
Compiler: MS VS 2005 pro
QT: 4.1.2 Enterprice
Windows: Xp SP2
Ciao,
Bookmarks