Dll Problem mit header Dateien C

Gast #1827945
Lesenswert?

Habe ein problem mit der erstellung einer dll.#

Wenn ich mir in eclipse cdt eine .dll Datei erstelle. Erzeug mir der 
compiler zwar eine .dll aber keine .lib Datei.
Ohne die Lib datei muß ich aber dann doch alle Prototyp header im 
Hauptprogramm bekanntmachen, oder muß ich das mit einer .lib Datei auch 
tun.

Ich habe vor die .dll zum Programmstart einzubinden. nur will ich nicht 
alle Prototypen im Hauptprogramm stehen habe.

Ich dachte das Geht genauso wie mit einer statischen Bibliothek oder ist 
das nicht der Fall.

Also was ich genau meine ist folgendes: Wenn ich eine statische 
Bibliothek einbinde zum Beispiel libw32_2.a. dann kann ich ja im 
Mainprogramm einfach angeben #include winsock.h und die Funktionen 
daraus nutzen, ohne das ich die Prototypen der funktionen darin nochmal 
angeben muß.

Nun würde ich dasselbe gerne mit einer dll machen, wegen austauschbar 
und so... Nur erstellt mir da eclipse irgendwie keine Importbibliothek.

Und selbst wenn es eine erstellen würde. Sind dann die prototypen 
vorhanden und ich kann einfach mit #include einbinden so wie ich mir das 
wünsche oder nicht.

Wie würdet ihr das machen, für jede Hilfe wäre ich sehr dankbar...
Persönliche Seite #1827977
Lesenswert?

Ahnungsloser schrieb:
> Wenn ich mir in eclipse cdt eine .dll Datei erstelle. Erzeug mir der
> compiler zwar eine .dll aber keine .lib Datei.

Das ist normal, allenfalls gibt es zur Unterstützung noch eine 
sogenannte "import library", die sich mit Tools à la IMPLIB auch 
nachträglich erzeugen ließe.

> Ohne die Lib datei muß ich aber dann doch alle Prototyp header im
> Hauptprogramm bekanntmachen, oder muß ich das mit einer .lib Datei auch
> tun.

Das musst Du so oder so, der C-Compiler selbst wertet Libraries 
überhaupt nicht aus, das tut erst der Linker.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren