Re: QtCore4.dll
Am Donnerstag, 9. November 2006 09:00 schrieb Harri Porten: Sidenote: On Thu, 9 Nov 2006, Stephan Kulow wrote: As you can see it links all Qt libs twice. If I remove the QtCore4.lib manually, kpat starts up fine, if not it crashes in random places, which indicate that kpat uses different (binary incompatible) QMap code than kdelibs does. This is not necessarily about binary incompatibility but likely about a heap conflict between the debug and release libraries. Opening kpat in depends.exe is likely to show both msvcrt.dll and msvcrtd.dll in the list of dependencies. Ah, that's the ldd of windows? :) Greetings, Stephan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: QtCore4.dll
On Thu, 9 Nov 2006, Stephan Kulow wrote: This is not necessarily about binary incompatibility but likely about a heap conflict between the debug and release libraries. Opening kpat in depends.exe is likely to show both msvcrt.dll and msvcrtd.dll in the list of dependencies. Ah, that's the ldd of windows? :) In union with an nm equivalent. Harri. ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: QtCore4.dll
Stephan Kulow schrieb: Hi! I found out why kpat requires QtCore4 - it links both against Core and Cored, everything in kdegames does: E.g. kdegames_LIB_DEPENDS:STATIC=C:/kde/qt-win-opensource-src-4.2.1/lib/QtCore4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtCored4.lib;kdecore;c:/kde/inst/lib/kdewin32d.lib;user32;shell32;ws2_32;C:/kde/qt-win-opensource-src-4.2.1/lib/QtXml4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtXmld4.lib;kdeui;kutils;kparts;kio;c:/kde/inst/lib/kde3support.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtCore4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtCored4.lib;kdecore;c:/kde/inst/lib/kdewin32d.lib;user32;shell32;ws2_32;c:/kde/inst/lib/kdnssd.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtXml4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtXmld4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtNetwork4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtNetworkd4.lib; As you can see it links all Qt libs twice. If I remove the QtCore4.lib manually, kpat starts up fine, if not it crashes in random places, which indicate that kpat uses different (binary incompatible) QMap code than kdelibs does. But I have no idea where the code to create this, but I guess in cmake itself. There seems to be some problems in the generated KDELibsDependencies.cmake: SET(kio_LIB_DEPENDS E:/Qt/qt-4.2.1/lib/QtCore4.lib;E:/Qt/qt-4.2.1/lib/QtCored4.lib;...) should be SET(kio_LIB_DEPENDS optimized;E:/Qt/qt-4.2.1/lib/QtCore4.lib;debug;E:/Qt/qt-4.2.1/lib/QtCored4.lib;...) And the undocumented command foo_LINK_TYPE seems not to work like expected. I stepped through cmTarget::AddLinkLibrary() and saw that _LINK_TYPE is not recognized due to LinkLibraryType is always cmTarget::GENERAL. But also removing the check for cmTarget::GENERAL does not help... :( btw: qtuitools.lib_LINK_TYPE is set to general instead optimized signature.asc Description: OpenPGP digital signature ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: QtCore4.dll
Am Donnerstag, 9. November 2006 11:12 schrieb Stephan Kulow: Am Donnerstag, 9. November 2006 10:50 schrieb Manuel Klimek: Hi, I'm just curious: was it already discussed to name the debug libraries *d.dll on windows? I don't want to start a 'religious' discussion ;-), but this would allow release and debug builds side by side on windows, where debug and release libraries mustn't be mixed. It was discussed in general and was discarded as under Unix at least those libraries are binary compatible. But I just tried to enable postfix for windows builds. Let's see how much breaks :) Meanwhile I found out that this breaks compilation, but I miss the time to fix it atm. So I guess we should briefly discuss if we want to keep it for Windows or rather revert it? I'd prefer if it's fixed, but I can only do so later. Greetings, Stephan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: QtCore4.dll
Stephan Kulow schrieb: Am Donnerstag, 9. November 2006 11:12 schrieb Stephan Kulow: Am Donnerstag, 9. November 2006 10:50 schrieb Manuel Klimek: Hi, I'm just curious: was it already discussed to name the debug libraries *d.dll on windows? I don't want to start a 'religious' discussion ;-), but this would allow release and debug builds side by side on windows, where debug and release libraries mustn't be mixed. It was discussed in general and was discarded as under Unix at least those libraries are binary compatible. But I just tried to enable postfix for windows builds. Let's see how much breaks :) Meanwhile I found out that this breaks compilation, but I miss the time to fix it atm. So I guess we should briefly discuss if we want to keep it for Windows or rather revert it? I'd prefer if it's fixed, but I can only do so later. I prefer the debug suffix too. Christian signature.asc Description: OpenPGP digital signature ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
QtCore4.dll
Hi! I found out why kpat requires QtCore4 - it links both against Core and Cored, everything in kdegames does: E.g. kdegames_LIB_DEPENDS:STATIC=C:/kde/qt-win-opensource-src-4.2.1/lib/QtCore4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtCored4.lib;kdecore;c:/kde/inst/lib/kdewin32d.lib;user32;shell32;ws2_32;C:/kde/qt-win-opensource-src-4.2.1/lib/QtXml4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtXmld4.lib;kdeui;kutils;kparts;kio;c:/kde/inst/lib/kde3support.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtCore4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtCored4.lib;kdecore;c:/kde/inst/lib/kdewin32d.lib;user32;shell32;ws2_32;c:/kde/inst/lib/kdnssd.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtXml4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtXmld4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtNetwork4.lib;C:/kde/qt-win-opensource-src-4.2.1/lib/QtNetworkd4.lib; As you can see it links all Qt libs twice. If I remove the QtCore4.lib manually, kpat starts up fine, if not it crashes in random places, which indicate that kpat uses different (binary incompatible) QMap code than kdelibs does. But I have no idea where the code to create this, but I guess in cmake itself. Greetings, Stephan ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: QtCore4.dll
Sidenote: On Thu, 9 Nov 2006, Stephan Kulow wrote: As you can see it links all Qt libs twice. If I remove the QtCore4.lib manually, kpat starts up fine, if not it crashes in random places, which indicate that kpat uses different (binary incompatible) QMap code than kdelibs does. This is not necessarily about binary incompatibility but likely about a heap conflict between the debug and release libraries. Opening kpat in depends.exe is likely to show both msvcrt.dll and msvcrtd.dll in the list of dependencies. Harri. ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem