JNI-dll: bei MinGW-build sporadischer Absturz

justincaseof

Grünschnabel
Hi!

ich habe mehrere JNI-dlls, die ich mittels Visual Studio gegen die VC 2008 Runtime gebaut habe. Das funktioniert ausnahmslos super stabil ohne jegliche Probleme.
Aus gegebenem Anlass bin ich nun dabei, alle JNI-Projekte mit MinGW neu zu bauen. Bisher hat das bei allen Projekten auch ohne jegliche Code-Anpassung super funktioniert. Ich stolpere nun jedoch über eine dll, die mir arge Kopfschmerzen bereitet: Nur bei diesem einen Projekt schließt sich die VM sporadisch bei einem Zugriff auf Funktionen der dll mit einer EXCEPTION_ACCES_VIOLATION. Es gibt keine wirkliche "böse Zeile" im C-Code an der dieses Problem auftritt; maximal einen Aufruf einer externen dll, an der sich die Abstürze zu häufen scheinen. Ich allokiere auch für alle speicherkritischen Sachen genügend Platz und räume diesen sauber wieder auf. Daran sollte es also nicht liegen.
Der VM-Absturz an sich geschieht sehr sporadisch - mal nach 12 Aufrufen der Methode - mal auch erst nach über 200. Die Stelle des Problems("Problematic Frames") aus den hs_err-logs sind dabei eher unterschiedlich. Zum einen wird die jvm.dll angegeben; zum andereren sogar die ntdll.dll; und wiederum ein andermal wird nur eine Speicheradresse angegeben.
Meine Frage ist nun, woran dies liegen kann. Ich bin mit meinem Latein am Ende.
Ich bitte desweiteren von Vorschlägen à la "Dann nimm doch weiter VisualStudio" abzusehen.

Vielen Dank im Voraus,
der Tobi
 
die Lösung ist, gegen eine andere msvcrt zu bauen. In meinem falle bin ich mit version 7.0 zum Ziel gekommen.
Ein Tutorial, wie man MinGW dazu überreden kann, ist hier zu finden:
http://www.mingw.org/wiki/SpecsFileHOWTO
...der Kommentar unter dem Tutorial ist das eigentliche Goldstück ;)
Ich hoff' es nützt irgendwann mal jemandem etwas.
 
Zurück