Forum: PC-Programmierung Unterschied Zwischen einen Debug und eine Release version


von Sebastian (Gast)


Lesenswert?

Was ist der Unterschied zwischen einen Debug- und Release-Version?

Ist eine Release Version mehr stabile als einen Debug Version ?

von Oliver R. (orb)


Lesenswert?

Das kommt darauf an, was der darunter versteht, der den Namen vergibt.
Üblicherweise ist eine 'Debug-Version' noch in der Entwicklung und zur 
Fehlersuche (debugging) gedacht, eine Release-Version ist fertig und für 
die Produktion/Veröffentlichung vorgesehen.

von Mike A. (Gast)


Lesenswert?

Sebastian schrieb:
> Ist eine Release Version mehr stabile als einen Debug Version ?

Da verwechselst du Debug- und Betaversion. Eine Debug-Version enthält 
Unterstützung fürs Debuggen, also z.B. speziellen Code, der beim 
Kompilieren der Release-Version über Präprozessoranweisungen 
ausgeblendet ist.

"mehr stabil" würde man gemeinhin als "stabiler" beschreiben. Wozu gibt 
es den Komparativ.


P.S. Du plenkst

von Sebastian V. (sebi_s)


Lesenswert?

Üblicherweise wird die Debug Version auch mit einer niedrigen 
Optimierungsstufe compiliert, da sonst eventuell Variablen oder ganze 
Funktionen wegoptimiert werden und nicht mehr schrittweise im Debugger 
verfolgt werden können. Die Debug Version kann daher auch deutlich 
langsamer sein als die Release Version. Ansonsten sollte die Release und 
Debug Version sich gleich verhalten. Außer man hat einen richtig fiesen 
Bug, der aus obskuren Gründen z.B. nur in der Release Version auftritt.

: Bearbeitet durch User
von Sven B. (scummos)


Lesenswert?

Üblicherweise ist wichtigste Unterschied, dass bei der Debug-Version die 
Debug-Symbole dabei sind, die es erlauben, den Ort eines Fehlers (mit 
Funktionsnamen etc.) ordentlich zurückzuverfolgen. Die Debug-Symbole 
assozieren jede Instruktion im erzeugten Binary mit dem Quellcode, aus 
dem sie erzeugt wurde.

: Bearbeitet durch User
von Georg (Gast)


Lesenswert?

Hallo,

die Debug-Version ist grösser, was heute kaum eine Rolle spielt, und sie 
verrät u.U. mehr als dem Programmierer lieb ist, z.B. Funktionsnamen.

Georg

von MaWin (Gast)


Lesenswert?

Sven B. schrieb:
> Üblicherweise ist wichtigste Unterschied, dass bei der Debug-Version die
> Debug-Symbole dabei sind, die es erlauben, den Ort eines Fehlers (mit
> Funktionsnamen etc.) ordentlich zurückzuverfolgen. Die Debug-Symbole
> assozieren jede Instruktion im erzeugten Binary mit dem Quellcode, aus
> dem sie erzeugt wurde

Debug-Versionen sind i.A. auch weniger vom Compiler codeoptimiert, 
laufen also langsamer und enthalten zusätzliche Prüfungen die ggf. zu 
Abstürzen führen (heap-Prüfungen, asserts). Damit sind sie im Prinzip 
sicherer.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.