[Assembler] Library erstellen und Linken

Diskussion zum Thema Programmierung unter DOS (Intel x86)
Antworten
Benutzeravatar
oDOSseus
LAN Manager
Beiträge: 239
Registriert: Di 10. Aug 2010, 15:21

[Assembler] Library erstellen und Linken

Beitrag von oDOSseus »

Hallo Assembler-Programmierer.

ich möchte gerne eine Library mit Assembler erstellen, die bestimmte Funktionen beinhaltet (die ich programmiere). Diese möchte ich dann gegen andere Assembler-programme linken.
(Ich weiß, ich könnte "include" benutzen, aber das ist nicht, was ich möchte)

Also bspw. enthält "io.asm" die Routinen "print" und "println". Dann möchte ich io.asm kompilieren und in "hallowelt.asm" auf print und println zugreifen (dahinspringen/sie als prozeduren aufrufen).

Kann mir jemand sagen wir das geht? Mit Beispielcode?
Brueggi

Re: [Assembler] Library erstellen und Linken

Beitrag von Brueggi »

EDIT: Ich hab dich falsch verstanden. Drum habe ich den vorherigen Text gelöscht :-)

Welchen Linker nimmst Du denn? Die brauchen ja immer irgendwo eine Art Liste, wo im File welches Unterprogramm liegt usw.
Benutzeravatar
oDOSseus
LAN Manager
Beiträge: 239
Registriert: Di 10. Aug 2010, 15:21

Re: [Assembler] Library erstellen und Linken

Beitrag von oDOSseus »

ich wollte LINK.EXE nehmen. Die is bei FreeDos dabei. Aber ich hab beim googlen was gefunden und probier das gleich aus. Danach werd ich hier schreiben ob ich einne weg gefunden hab.
Benutzeravatar
oDOSseus
LAN Manager
Beiträge: 239
Registriert: Di 10. Aug 2010, 15:21

Re: [Assembler] Library erstellen und Linken

Beitrag von oDOSseus »

Hm klappt iwi nich so ganz.
Erst kompiliere ich mit

Code: Alles auswählen

ML /C library.asm
Dann will ich

Code: Alles auswählen

LIB library.obj
machen, aber da fehlen die header im obj, da ich auf 16bit die /coff option nich nutzen kann.
Benutzeravatar
oDOSseus
LAN Manager
Beiträge: 239
Registriert: Di 10. Aug 2010, 15:21

Re: [Assembler] Library erstellen und Linken

Beitrag von oDOSseus »

Okay habs jetzt.

Erstmal macht man mittels

Code: Alles auswählen

ml /c library.asm
Eine OBJ-Datei aus library.asm. Dann erzeugt man daraus eine .LIB und .LST mittels:

Code: Alles auswählen

lib library.lib +library.obj
Danach kann man jedes andere programm dagegen linken mit LINK.EXE
Benutzeravatar
matze79
DOS-Gott
Beiträge: 7913
Registriert: So 9. Sep 2012, 20:48

Re: [Assembler] Library erstellen und Linken

Beitrag von matze79 »

Kann man so entstandene Libarys eigentlich auch in QuickBasic 4.5 nutzen ?
Antworten