Library aus .asm Datei erstellen



  • Nur ne kurze Frage, die mich derzeit beschäftigt:
    Wie kann ich aus einer Assemblerdatei eine flexible .lib Datei erstellen?
    Würde diese Datei gern in eine Hochsprache einbinden.

    MFG
    FatalError



  • Moin, Moin...

    Ich weiß leider nicht, welchen Assembler Du benutzt. Ein Beispiel für MASM32:

    .586
    
    option casemap : none
    
    .model flat, c
    
    .code
    
    public addiere
    
    addiere proc near
    
    	push	ebp
    	mov		ebp, esp
    
    	mov		eax, [ebp + 8]		; 1. Parameter nach eax
    	add		eax, [ebp + 12]		; 2. Parameter hinzuaddieren
    
    	mov		esp, ebp
    	pop		ebp
    
    	ret
    
    addiere endp
    
    end
    

    Die obige Funktion addiert zwei Zahlen, die ihr als Parameter übergeben werden. Zuerst assemblieren mit ml /c /coff mylib.asm
    Dann aus der OBJ-Datei eine LIB-Datei basteln. Dafür gibt es das Tool LIB.EXE. lib /OUT:mylib.lib mylib.obj

    Nun im C-Quellcode noch die Deklaration der Funktion(int addiere(int, int)) einfügen und mit der LIB-Datei linken. Fertig.

    Ciao...



  • achso!
    Ja, eine LIB.exe hab ich und die Objekt-Dateien auch. Hab bloß nicht gewusst, wie man das einsetzt.

    Danke!


Anmelden zum Antworten