<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Statische Lib oder dynamisch als DLL]]></title><description><![CDATA[<p>Seeeerwutz,</p>
<p>ich habe gerade die wxWidgets kompiliert. Und stelle mir ganz allgemein die Frage:</p>
<p>Wenn ich eine Library habe, die ich statisch als LIB oder dynamisch als DLL linken kann, da beides verfügbar ist, für was entscheide ich mich und aus welchem Grund?</p>
<p>Beantwortet doch die Frage doch bitte einfach mal aus Eurer Sicht. Die Suche hat bisher noch nichts ausgespuckt, ich stöbere aber weiter.</p>
<p>Den Zwang der LGPL lassen wir einfach mal aussen vor und gehen davon aus, dass alles erlaubt ist.</p>
<p>Meine Gedanken:</p>
<p>DLL:<br />
- EXE wird nicht so groß<br />
- Bibliothek ist ohne erneutes Übersetzen der Anwendung austauschbar<br />
- Gefahr, dass der Anwender die DLL löscht<br />
- DLLs müssen mitinstalliert werden</p>
<p>LIB:<br />
Gründe der DLL umgekehrt.</p>
<p>Ich bin gespannt auf die Antworten.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/195176/statische-lib-oder-dynamisch-als-dll</link><generator>RSS for Node</generator><lastBuildDate>Tue, 30 Jun 2026 06:40:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/195176.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 15 Oct 2007 08:41:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Statische Lib oder dynamisch als DLL on Mon, 15 Oct 2007 08:41:32 GMT]]></title><description><![CDATA[<p>Seeeerwutz,</p>
<p>ich habe gerade die wxWidgets kompiliert. Und stelle mir ganz allgemein die Frage:</p>
<p>Wenn ich eine Library habe, die ich statisch als LIB oder dynamisch als DLL linken kann, da beides verfügbar ist, für was entscheide ich mich und aus welchem Grund?</p>
<p>Beantwortet doch die Frage doch bitte einfach mal aus Eurer Sicht. Die Suche hat bisher noch nichts ausgespuckt, ich stöbere aber weiter.</p>
<p>Den Zwang der LGPL lassen wir einfach mal aussen vor und gehen davon aus, dass alles erlaubt ist.</p>
<p>Meine Gedanken:</p>
<p>DLL:<br />
- EXE wird nicht so groß<br />
- Bibliothek ist ohne erneutes Übersetzen der Anwendung austauschbar<br />
- Gefahr, dass der Anwender die DLL löscht<br />
- DLLs müssen mitinstalliert werden</p>
<p>LIB:<br />
Gründe der DLL umgekehrt.</p>
<p>Ich bin gespannt auf die Antworten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385350</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385350</guid><dc:creator><![CDATA[Shogun]]></dc:creator><pubDate>Mon, 15 Oct 2007 08:41:32 GMT</pubDate></item><item><title><![CDATA[Reply to Statische Lib oder dynamisch als DLL on Mon, 15 Oct 2007 08:43:45 GMT]]></title><description><![CDATA[<p><a href="https://www.google.de/search?&amp;q=dll%20hell" rel="nofollow">Google: dll hell</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385351</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385351</guid><dc:creator><![CDATA[DerMitDemCodeTanzt]]></dc:creator><pubDate>Mon, 15 Oct 2007 08:43:45 GMT</pubDate></item><item><title><![CDATA[Reply to Statische Lib oder dynamisch als DLL on Mon, 15 Oct 2007 08:55:00 GMT]]></title><description><![CDATA[<p>Ich bevorzuge immer, alles in eine exe-Datei zu packen. Bisher hatte ich aber nie Projekte, die sehr groß waren; ich glaub meine größte Exe-Datei war etwa 4 MB groß <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
Was ich aber glaube festgetellt zu haben: Im kommerziellen Bereich wirken viele DLLs und große Exe-Dateien professioneller, ganz im Sinne von &quot;ein großes Programm kann auch mehr&quot;. Bei einem auf CD ausgelieferten Programm hab ich mal ne unnötige Menge Ressourcen in die exe gepackt, damit die CD-Größe nicht bei 5 MB liegt, dazu noch ein paar ungenutzte .dat-Dateien und fertig war die ~160 MB-CD <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Aber wie gesagt: Normalerweise würde ich alles in die exe packen, dann hast du ein paar Fehlerquellen weniger und es wirkt für mich persönlich schlanker - wenn es mit der Größe hinhaut (ne exe von &gt;100 MB ist wohl nicht sooo gut).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385358</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385358</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Mon, 15 Oct 2007 08:55:00 GMT</pubDate></item><item><title><![CDATA[Reply to Statische Lib oder dynamisch als DLL on Mon, 15 Oct 2007 20:53:49 GMT]]></title><description><![CDATA[<p>DLL ist besser...</p>
<p>Da du mehrere EXE's beilegen kannst - und alle nutzen die DLL - Die Gesamtgröße ist dann kleiner...</p>
<p>DLL HELL gibt es nicht - solange die DLL direkt im Ordner von EXE liegt</p>
<p>Dann wird es glaub ich gar schneller kompiliert... die EXE selbst ist ja klein</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385953</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385953</guid><dc:creator><![CDATA[xry]]></dc:creator><pubDate>Mon, 15 Oct 2007 20:53:49 GMT</pubDate></item><item><title><![CDATA[Reply to Statische Lib oder dynamisch als DLL on Mon, 15 Oct 2007 21:35:50 GMT]]></title><description><![CDATA[<p>Wenn du nur eine .EXE brauchst, dann auf jeden Fall die LIB linken.<br />
Wenn du eine .EXE brauchst + mehrere (u.U. selbst geschriebene) DLLs welche auch wxWidgets verwenden, dann wohl lieber wxWidgets auch als DLL.</p>
<blockquote>
<p>Bibliothek ist ohne erneutes Übersetzen der Anwendung austauschbar</p>
</blockquote>
<p>Das würde ich so nicht sagen. Es kann funktionieren, aber es funktioniert nicht in jedem Fall. Wenn zwischen den beiden Versionen (alt, neu) der Bibliothek Unterschiede im Interface sind (das was das die DLL nutzende Programm per #include einbinden kann), dann kann das mächtig in die Hose gehen.<br />
Oder wenn alt/neu mit unterschiedlichen Compilern oder Einstellungen übersetzt wurden.</p>
<p>Gefahr dass der Anwender irgendwas löscht würde ich ignorieren -- der Anwender kann ja auch die .EXE selbst löschen, dann geht auch nixmehr.</p>
<p>Vonwegen mitinstallieren - das macht wohl nur einen Unterschied wenn das Programm wirklich NUR aus einer Datei besteht und sonst garnichts braucht. Also keine Datenfiles, keine Bilder, ... nichts. Und eben auch keine anderen DLLs, d.h. da sind wir wieder beim Fall &quot;wenn du nur eine .EXE brauchst&quot; (s.o.).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385970</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385970</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Mon, 15 Oct 2007 21:35:50 GMT</pubDate></item></channel></rss>