guten abend,
ich bin gerade unter windows mit Qt 4.7.4 und mingw und will eine dll kompilieren. das klappt soweit problemlos, nur wird beim laden der einstiegspunkt nicht ausgefuehrt. nach einigen nachforschungen scheint es nun so, als wuerde mingw einen eigenen einstiegspunkt generieren, weil es meinen nicht als solchen erkennt.
ich habe eine DllMain funktion, wie mingw sie scheinbar erwarten soll (BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)).
ich konnte weder zu qmake, noch mingw infos finden, wie man den einstiegspunkt manuell angeben kann, nur zum microsoft compiler gibt es da reichlich infos.
die frage ist also, ob und ggf. wie man das mit qmake oder notfalls mit mingw (mingw32-make argumente?) hinbekommen kann.
vielen dank im voraus an jeden der mir weiterhelfen kann!
[gelöst] qmake: einstiegspunkt von shared lib setzen?
-
-=Freaky=-
- Beiträge: 503
- Registriert: 29. Dezember 2006 22:54
- Wohnort: HL
[gelöst] qmake: einstiegspunkt von shared lib setzen?
Zuletzt geändert von -=Freaky=- am 9. Oktober 2011 13:51, insgesamt 1-mal geändert.
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: qmake: einstiegspunkt von shared lib setzen?
Wenn die DLL eine korrekte DLllMain - Funktion hat dann wird sie auch aufgerufen.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
-
-=Freaky=-
- Beiträge: 503
- Registriert: 29. Dezember 2006 22:54
- Wohnort: HL
Re: qmake: einstiegspunkt von shared lib setzen?
du hast recht, es war mein fehler ... allerdings hat es auch irgendwie einige zeit gedauert, drauf zu stossen dass mit mingw die DllMain explizit exportiert werden muss.Christian81 hat geschrieben:Wenn die DLL eine korrekte DLllMain - Funktion hat dann wird sie auch aufgerufen.
die loesung ist also folgende:
Code: Alles auswählen
extern "C" __declspec(dllexport) BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)