<?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[unbekannte Funktionen in statischer Bibliothek verwenden MinGW]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe da mal eine Frage, denn ich weis nicht wie ich es machen soll.</p>
<p>1. ich besitze eine kommerzielle 3DEngine welche ich statisch dazu linke mit MinGW über CodeBlocks IDE. Kein C++11.</p>
<p>2. ich möchte eine weitere externe statische Bibliothek erstellen, welche Funktionen aus dieser 3DEngine verwendet.<br />
Diese Lib soll auch zum Hauptprogramm dazu gelinkt werden, soll aber natürlich beim erstellen jetzt nicht auch die 3DEngine beinhalten.</p>
<p>Sagen wir mal die 3DEngine hätte den Befehl:<br />
void MoveMeshObject( Handle myMesh, float x,float y,float z)</p>
<p>disen kann ich in meinem Hauptprogramm so verwenden:<br />
MoveMeshObject( Player , 0, 0, 0.25 )</p>
<p>vorher muss ich ich die Bibliothek über eine Header Datei bekannt machen.<br />
#include &quot;Pfad\3dEngineHeader.h&quot;</p>
<p>Ich linke dazu<br />
3dengine.h.devcpp.lib</p>
<p>Nun möchte ich gerne die Funktion MoveMeshObject() in einer externen statischen Bibliothek und evtl. auch in einer DLL verwenden.<br />
Diese externe Lib soll dann wieder in einem Programm verwendet werden welche die<br />
Funktionen der 3DEngine kennt und am Schluss wird sie dazu gelinkt.</p>
<p>Kann ich die Befehle aus der 3DEngine benutzen ohne sie zu der zu erstellenden Bibliothek vorab dazu zu linken?<br />
Wie muss ich die Befehle aus der Engine bekannt machen?</p>
<p>Kompiliervorgang:</p>
<p>statische Lib ohne Engine aber mit Befehlen derselben ---&gt; meineLib.lib (linken zur Lib?)</p>
<p>MeinHauptProgramm ---&gt; kompilieren</p>
<p>in C::B dann 3DEngine und meineLib.lib dazu linken.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/321181/unbekannte-funktionen-in-statischer-bibliothek-verwenden-mingw</link><generator>RSS for Node</generator><lastBuildDate>Tue, 21 Jul 2026 22:02:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/321181.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 26 Oct 2013 18:48:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to unbekannte Funktionen in statischer Bibliothek verwenden MinGW on Sat, 26 Oct 2013 18:48:53 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe da mal eine Frage, denn ich weis nicht wie ich es machen soll.</p>
<p>1. ich besitze eine kommerzielle 3DEngine welche ich statisch dazu linke mit MinGW über CodeBlocks IDE. Kein C++11.</p>
<p>2. ich möchte eine weitere externe statische Bibliothek erstellen, welche Funktionen aus dieser 3DEngine verwendet.<br />
Diese Lib soll auch zum Hauptprogramm dazu gelinkt werden, soll aber natürlich beim erstellen jetzt nicht auch die 3DEngine beinhalten.</p>
<p>Sagen wir mal die 3DEngine hätte den Befehl:<br />
void MoveMeshObject( Handle myMesh, float x,float y,float z)</p>
<p>disen kann ich in meinem Hauptprogramm so verwenden:<br />
MoveMeshObject( Player , 0, 0, 0.25 )</p>
<p>vorher muss ich ich die Bibliothek über eine Header Datei bekannt machen.<br />
#include &quot;Pfad\3dEngineHeader.h&quot;</p>
<p>Ich linke dazu<br />
3dengine.h.devcpp.lib</p>
<p>Nun möchte ich gerne die Funktion MoveMeshObject() in einer externen statischen Bibliothek und evtl. auch in einer DLL verwenden.<br />
Diese externe Lib soll dann wieder in einem Programm verwendet werden welche die<br />
Funktionen der 3DEngine kennt und am Schluss wird sie dazu gelinkt.</p>
<p>Kann ich die Befehle aus der 3DEngine benutzen ohne sie zu der zu erstellenden Bibliothek vorab dazu zu linken?<br />
Wie muss ich die Befehle aus der Engine bekannt machen?</p>
<p>Kompiliervorgang:</p>
<p>statische Lib ohne Engine aber mit Befehlen derselben ---&gt; meineLib.lib (linken zur Lib?)</p>
<p>MeinHauptProgramm ---&gt; kompilieren</p>
<p>in C::B dann 3DEngine und meineLib.lib dazu linken.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2363176</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2363176</guid><dc:creator><![CDATA[Kopfkratz]]></dc:creator><pubDate>Sat, 26 Oct 2013 18:48:53 GMT</pubDate></item><item><title><![CDATA[Reply to unbekannte Funktionen in statischer Bibliothek verwenden MinGW on Sat, 26 Oct 2013 19:24:42 GMT]]></title><description><![CDATA[<p>Kopfkratz schrieb:</p>
<blockquote>
<p>Kann ich die Befehle aus der 3DEngine benutzen ohne sie zu der zu erstellenden Bibliothek vorab dazu zu linken?</p>
</blockquote>
<p>In einer statischen lib schon, wenn die später zusammen mit der Engine zu einer exe gelinked wird. Eine dll dagegen wird zu einem separaten Modul und muss die Engine selbst linken. Beachte, dass die dll dann auch ihre eigene &quot;Instanz&quot; der Engine lib hat, also irgendwelcher globaler State der Engine lib wird nicht zwischen exe und dll geshared werden, sofern in dieser Engine lib da nicht spezielle Maßnahmen ergriffen wurden, um das zu ermöglichen...</p>
<p>Kopfkratz schrieb:</p>
<blockquote>
<p>Wie muss ich die Befehle aus der Engine bekannt machen?</p>
</blockquote>
<p>Header inkludieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2363186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2363186</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Sat, 26 Oct 2013 19:24:42 GMT</pubDate></item><item><title><![CDATA[Reply to unbekannte Funktionen in statischer Bibliothek verwenden MinGW on Sat, 26 Oct 2013 19:35:00 GMT]]></title><description><![CDATA[<p>Gut, dann nur statische Lib zum linken.</p>
<p>Muss mich da noch mal belesen, C::B erstellt mir da nur ein .c file<br />
im Projekt Template.</p>
<p>Habe vor Jahren mal eine DLL probeweise erstellt, eine statische Lib noch nie, aber Google wird's wissen, danke erstmal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2363190</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2363190</guid><dc:creator><![CDATA[Kopfkratz]]></dc:creator><pubDate>Sat, 26 Oct 2013 19:35:00 GMT</pubDate></item></channel></rss>