Het avontuur begint bij het ontwikkelen van een applicatie die bestaat uit een uitvoerbaar bestand (a.exe) en een shared library (b). Tot zo ver was de ontwikkeling op linux gebeurt met gcc 3.4.3. De shared library wordt hierbij b.so gedoopt en gebuild met de -g optie om te kunnen debugen. Het bestand a.exe wordt gebouwd *zonder* debug informatie. Alles lukt prima op deze manier.
Bij het compileren onder windows met de vc 7.1 compiler worden zowel de library (b.dll) als a.exe zonder debug gemaakt. Indien men van enkel b.dll een debugversie maakt en dan het programma opstart gaat ie onverbiddelijk onderuit. Een niet debug programma met een debug dll gaat hier compleet de mist in, in tegenstelling tot linux die lustig voort werkt.
Is dit het gewenste gedrag? Waar zit dan het verschil tussen de win en de linux methode?
Is er een manier om een mix van debug en niet debug componenten juist te laten werken op windows?
Bij het compileren onder windows met de vc 7.1 compiler worden zowel de library (b.dll) als a.exe zonder debug gemaakt. Indien men van enkel b.dll een debugversie maakt en dan het programma opstart gaat ie onverbiddelijk onderuit. Een niet debug programma met een debug dll gaat hier compleet de mist in, in tegenstelling tot linux die lustig voort werkt.
Is dit het gewenste gedrag? Waar zit dan het verschil tussen de win en de linux methode?
Is er een manier om een mix van debug en niet debug componenten juist te laten werken op windows?