Die Debug Version nimmt keine Optimierungen vor, der Source-Code wird in die Debug Version eingearbeitet, damit man Breakpoints setzen und durch den Code steppen kann.
Die Release Version nimmt Optimierungen vor, der Source-Code ist nicht mehr vorhanden und Breakpoints können daher nicht mehr berücksichtigt werden.
Was ist dann also eine Programm-Version ohne Source-Code?
Das ist doch das, was Du willst, sofern ich Dich richtig verstanden habe.
Aus meiner Sicht ist eine Debug-Version eine Version, die sich debuggen lässt - somit also Source-Code enthält. Nicht mehr und nicht weniger.
Eine Release-Version kann auch ohne Optimierungen erstellt werden. Wenn das Dein Ziel ist, dann ist das einfach nur eine Option, die Du in den Projekt-Einstellungen ändern musst. Und schon hast Du Deine Anfangsfrage selbst beantwortet.
Allerdings sehe ich den Vorteil nicht. Man hat eine unperformante Bibliothek, die man nicht debuggen kann. Alle Nachteile auf einem Haufen.
@JustSid: Afaik kann die PDB aber auch eingebettet sein. Dann wäre der Source-Code in der DLL enthalten. Man kann hier natürlich auch einstellen, dass man sie nicht einbetten will und liefert sie nicht mit aus.