dlltool(1)
Namn
dlltool – skapa filer som behövs för att bygga och använda DLL-filer
Synopsis
dlltool [-d|--input-def def-fil] [-b|--base-file basfil] [-e|--output-exp export-fil] [-z|--output-def def-fil] [-l|--output-lib bibliotek-fil] [-y|--output-delaylib bibliotek-fil] [--export-all-symbols] [--no-export-all-symbols] [--exclude-symbols lista] [--no-default-excludes] [-S|--as assembler-sökväg] [-f|--as-flags alternativ] [-D|--dllname namn] [-m|--machine arkitektur] [-a|--add-indirect] [-U|--add-underscore] [--add-stdcall-underscore] [-k|--kill-at] [-A|--add-stdcall-alias] [-p|--ext-prefix-alias prefix] [-x|--no-idata4] [-c|--no-idata5] [--use-nul-prefixed-import-tables] [-I|--identify bibliotek-fil] [--identify-strict] [-i|--interwork] [-n|--nodelete] [-t|--temp-prefix prefix] [-v|--verbose] [-h|--help] [-V|--version] [--no-leading-underscore] [--leading-underscore] [--deterministic-libraries] [--non-deterministic-libraries] [objektfil ...]
Beskrivning
dlltool läser in sina indata från alternativ som -d och -b samt objektfiler som anges på kommandoraden. Därefter behandlar den dessa data och skapar olika filer:
- Om -e anges skapas en exportfil.
- Om -l anges skapas en bibliotekfil.
- Om -z anges skapas en .def-fil.
När en DLL skapas behövs tre ytterligare filer. dlltool kan hjälpa till att generera dessa.
1. .def-fil
Denna fil anger vilka funktioner som exporteras/importeras i DLL:en. Den kan skapas manuellt eller genereras med:
dlltool -z fil.def objektfiler...
Funktioner kan markeras för export i en objektfil med:
asm (".section .drectve"); asm (".ascii \"-export:min_funktion\"");
2. Exportfil
Denna fil används vid länkning av DLL:en och skapas med:
dlltool -e exports.o -l dll.lib objektfiler...
3. Biblioteksfil (importbibliotek)
Program som använder DLL:en länkar mot denna fil, som skapas med:
dlltool -l dll.lib objektfiler...
Om -y anges skapas istället ett fördröjt importbibliotek (delayload). Detta gör att DLL:en laddas först när en funktion anropas första gången.
Exempel på att skapa en DLL från dll.c och ett program som använder den:
gcc -c dll.c dlltool -e exports.o -l dll.lib dll.o gcc dll.o exports.o -o dll.dll gcc program.o dll.lib -o program
dlltool kan även identifiera vilken DLL ett importbibliotek hör till:
dlltool --identify bibliotek.lib
Alternativ
-d, --input-def fil
- Anger en .def-fil att läsa in.
-b, --base-file fil
- Anger en basfil att läsa in.
-e, --output-exp fil
- Skapar en exportfil.
-z, --output-def fil
- Skapar en .def-fil.
-l, --output-lib fil
- Skapar ett importbibliotek.
-y, --output-delaylib fil
- Skapar ett fördröjt importbibliotek (delayload).
--export-all-symbols
- Exporterar alla globala symboler.
--exclude-symbols lista
- Anger symboler som inte ska exporteras.
-S, --as sökväg
- Anger sökväg till assembler.
-f, --as-flags alternativ
- Skickar alternativ till assemblern.
-D, --dll-name namn
- Anger DLL-namnet i .def-filen.
-m, --machine arkitektur
- Anger arkitektur, t.ex. arm.
-U, --add-underscore
- Lägger till ett understrykningstecken till alla exporterade symboler.
-k, --kill-at
- Tar bort @num-suffix från stdcall-funktioner.
-A, --add-stdcall-alias
- Lägger till alias för stdcall-funktioner utan @num.
-p, --ext-prefix-alias prefix
- Skapar externa alias med ett prefix.
-x, --no-idata4, -c, --no-idata5
- Utesluter sektionerna .idata4 och .idata5.
-I, --identify fil
- Identifierar DLL:en för ett importbibliotek.
-v, --verbose
- Skriver ut detaljerad information.
-h, --help
- Visar hjälp och avslutar.
-V, --version
- Visar versionsinformation och avslutar.
Se även
Copyright
Copyright © 1991–2025 Free Software Foundation, Inc. Denna dokumentation får kopieras, distribueras och modifieras enligt villkoren i GNU Free Documentation License version 1.3 eller senare.
Kolofon
Denna sida är en del av binutils-projektet. Mer information: http://www.gnu.org/software/binutils/
Buggrapporter kan skickas till: Bugzilla – Binutils
Denna sida genererades från källkoden den 2025-02-02.
Sidslut
Orginalhemsidan på Engelska :https://man7.org/linux/man-pages/man1/dlltool.1.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.