Autor Thema: dynamisches linken  (Gelesen 4908 mal)

maumo

  • Beiträge: 182
    • Profil anzeigen
    • http://maumo.50webs.com/
Gespeichert
« am: 20. May 2006, 13:02 »
also ich befasse mich zurzeit mit dem dynamischen linken von programmen. ich hab mir mal die einzelnen arbeitsschsritte aufgeschrieben:

1. zuerst das hauptmodul laden.
2 .die globalen symbole in eine liste eintragen
3. die externen symbole in eine andere eintragen.
4. falls externe symbole in der liste:
a. eine benötigte bibliothek laden.
b. die globale symbole der bibliothek in eine liste eintragen,
und falls solch ein symbol in der externen liste ist, dass jeweilige modul das
symbole relocaten lassen.
c. dann die externen symbole der bibliothek in die liste eintragen
d. zu punkt 4 springen

d.h. in der global-liste muss typ und name des symbols stehen
und in der extern-liste muss modul, dass dieses symbol benötigt,
name und typ stehen.

macht ihr das auch in etwa so, oder kennt ihr ne andere (möglicherweise) einfachere methode?

maumo

maumo

  • Beiträge: 182
    • Profil anzeigen
    • http://maumo.50webs.com/
Gespeichert
« Antwort #1 am: 21. May 2006, 15:20 »
ok.. also mach ichs richtig^^

kennt ihr ne möglichkeit, eine dll (und die *.lib datei!) zu erstellen? also bei dev-cpp krieg ich immer die meldung: "no export definition file provided. Creating One, but that may not be what you want". ich hab aber export funktionen (mit __decl(dllexport)) definiert.

was muss ich denn noch beachten?

Jidder

  • Administrator
  • Beiträge: 1 625
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 21. May 2006, 20:58 »
Dev-C++ hab ich nie genutzt, aber wie man den MinGW dazu bringt dlls zu erstellen, steht hier unter "How to create a dll": http://www.mingw.org/docs.shtml

.lib-Dateien gibt es bei Dev-C++ bzw. MinGW nicht. Die heissen da *.a.
Dieser Text wird unter jedem Beitrag angezeigt.

 

Einloggen