AnglaisFrançaisEspagnol

Exécutez les serveurs | Ubuntu > | Fedora > |


Icône de favori OnWorks

i686-w64-mingw32-dlltool - En ligne dans le cloud

Exécutez i686-w64-mingw32-dlltool dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande i686-w64-mingw32-dlltool qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks à l'aide de l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

PRÉNOM


dlltool - Créez les fichiers nécessaires pour créer et utiliser des DLL.

SYNOPSIS


dlltool [-d|--input-def nom-fichier-def]
[-b|--base-fichier nom-fichier-base]
[-e|--exp-sortie export-nom-de-fichier]
[-z|--output-def nom-fichier-def]
[-l|--sortie-lib nom-fichier-bibliothèque]
[-y|--output-delaylib nom-fichier-bibliothèque]
[--export-all-symbols] [--no-export-all-symbols]
[--exclude-symboles liste]
[--no-default-exclut]
[-S|--comme chemin d'accès à l'assembleur] [-f|--as-flags Options]
[-D|--dllname prénom] [-m|--machine click]
[-a|--add-indirect]
[-U|--add-trait de soulignement] [--add-stdcall-trait de soulignement]
[-k|--kill-at] [-A|--add-stdcall-alias]
[-p|--ext-prefix-alias préfixe]
[-x|--no-idata4] [-c|--no-idata5]
[--use-nul-prefixed-import-tables]
[-I|--identifier nom-fichier-bibliothèque] [--identifier-strict]
[-i|--interfonctionnement]
[-n|--nodelete] [-t|--temp-préfixe préfixe]
[-v|--verbeux]
[-h|--Aidez-moi] [-V|--version]
[--no-leader-underscore] [--leader-underscore]
[fichier-objet ...]

DESCRIPTION


dlltool lit ses entrées, qui peuvent provenir du -d et -b options ainsi que l'objet
fichiers spécifiés sur la ligne de commande. Il traite ensuite ces entrées et si le -e option
a été spécifié, il crée un fichier d'exportation. Si la -l l'option a été spécifiée
crée un fichier de bibliothèque et si le -z option a été spécifiée, il crée un fichier def. Tout
ou tous les -e, -l et -z les options peuvent être présentes dans une invocation de dlltool.

Lors de la création d'une DLL, avec la source de la DLL, il est nécessaire d'avoir trois
autres fichiers. dlltool peut aider à la création de ces fichiers.

Le premier fichier est un .def fichier qui spécifie quelles fonctions sont exportées de la DLL,
qui fonctionne les importations de DLL, et ainsi de suite. Ceci est un fichier texte et peut être créé par
main, ou dlltool peut être utilisé pour le créer en utilisant le -z option. Dans ce cas dlltool seront
scannez les fichiers objet spécifiés sur sa ligne de commande à la recherche des fonctions qui ont
été spécialement marqués comme étant exportés et mettre des entrées pour eux dans le .def le déposer
crée.

Pour marquer une fonction comme étant exportée à partir d'une DLL, elle doit avoir un
-exportation: entrée dans le .dectve section du fichier objet. Cela peut être
fait en C en utilisant le asm() opérateur:

asm (".section .drecve");
asm (".ascii \"-export:my_func\"");

int my_func (vide) { ... }

Le deuxième fichier nécessaire à la création de DLL est un fichier d'exportation. Ce fichier est lié au
les fichiers objets qui composent le corps de la DLL et il gère l'interface entre la DLL
et le monde extérieur. Il s'agit d'un fichier binaire et il peut être créé en donnant le -e
Option de dlltool lorsqu'il crée ou lit dans un .def fichier.

Le troisième fichier nécessaire à la création de la DLL est le fichier de bibliothèque avec lequel les programmes seront liés dans
pour accéder aux fonctions de la DLL (une "bibliothèque d'importation"). Ce fichier peut être créé
en donnant le -l option à dlltool lorsqu'il crée ou lit dans un .def fichier.

Si la -y option est spécifiée, dlltool génère une bibliothèque d'importation différée qui peut être utilisée
au lieu de la bibliothèque d'importation normale pour permettre à un programme de se lier à la dll uniquement dès que
une fonction importée est appelée pour la première fois. L'exécutable résultant devra
être lié à la bibliothèque static delayimp contenant __delayLoadHelper2(), lequel, à son tour
importera LoadLibraryA et GetProcAddress depuis kernel32.

dlltool construit le fichier de bibliothèque à la main, mais il construit le fichier d'exportation en créant
fichiers temporaires contenant des instructions d'assembleur, puis les assembler. Les -S commander
L'option de ligne peut être utilisée pour spécifier le chemin d'accès à l'assembleur que dlltool utilisera, et
le -f L'option peut être utilisée pour passer des drapeaux spécifiques à cet assembleur. Les -n peut être utilisé pour
empêcher dlltool de supprimer ces fichiers assembleur temporaires lorsque c'est fait, et si -n
est spécifié deux fois, cela empêchera dlltool de supprimer les fichiers objets temporaires
il avait l'habitude de construire la bibliothèque.

Voici un exemple de création d'une DLL à partir d'un fichier source dll.c et aussi créer un programme
(à partir d'un fichier objet appelé programme.o) qui utilise cette DLL :

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 programme

dlltool peut également être utilisé pour interroger une bibliothèque d'importation existante afin de déterminer le nom du
DLL à laquelle il est associé. Voir la description du -I or --identifier option.

OPTIONS


Les options de la ligne de commande ont les significations suivantes :

-d nom de fichier
--input-def nom de fichier
Spécifie le nom d'un .def fichier à lire et à traiter.

-b nom de fichier
--base-fichier nom de fichier
Spécifie le nom d'un fichier de base à lire et à traiter. Le contenu de ce
sera ajouté à la section de relocalisation dans le fichier d'exportation généré par dlltool.

-e nom de fichier
--exp-sortie nom de fichier
Spécifie le nom du fichier d'exportation à créer par dlltool.

-z nom de fichier
--output-def nom de fichier
Spécifie le nom du .def fichier à créer par dlltool.

-l nom de fichier
--sortie-lib nom de fichier
Spécifie le nom du fichier de bibliothèque à créer par dlltool.

-y nom de fichier
--output-delaylib nom de fichier
Spécifie le nom du fichier de bibliothèque d'importation différée à créer par dlltool.

--export-all-symbols
Traiter tous les symboles définis globaux et faibles trouvés dans les fichiers objet d'entrée comme des symboles
à exporter. Il existe une petite liste de symboles qui ne sont pas exportés par défaut ;
voir l' --no-default-exclut option. Vous pouvez ajouter à la liste des symboles pour ne pas
exporter en utilisant le --exclude-symboles option.

--no-export-all-symbols
Exporter uniquement les symboles explicitement répertoriés dans une entrée .def déposer ou dans .dectve sections dans
les fichiers objet d'entrée. C'est le comportement par défaut. Les .dectve les sections sont
créé par dllexport attributs dans le code source.

--exclude-symboles liste
N'exportez pas les symboles dans liste. Ceci est une liste de noms de symboles séparés par des virgules
ou deux-points. Les noms de symboles ne doivent pas contenir de trait de soulignement au début. Cette
n'a de sens que lorsque --export-all-symbols est utilisé.

--no-default-exclut
Quand --export-all-symbols est utilisé, il évitera par défaut d'exporter certains
symboles. La liste actuelle des symboles à éviter d'exporter est DllMain@12,
DllEntryPoint@0, impur_ptr. Vous pouvez utiliser le --no-default-exclut possibilité d'aller de l'avant
et exporter ces symboles spéciaux. Ceci n'a de sens que lorsque --export-all-symbols
est utilisé.

-S chemin
--comme chemin
Spécifie le chemin, y compris le nom de fichier, de l'assembleur à utiliser pour créer le
fichier d'exportation.

-f Options
--as-flags Options
Spécifie toutes les options de ligne de commande spécifiques à transmettre à l'assembleur lorsque
construire le fichier d'export. Cette option fonctionnera même si le -S l'option n'est pas utilisée.
Cette option ne prend qu'un argument, et si elle se produit plus d'une fois sur la commande
ligne, les occurrences ultérieures remplaceront les occurrences antérieures. Donc si c'est nécessaire
pour passer plusieurs options à l'assembleur, elles doivent être entourées de guillemets doubles.

-D prénom
--dll-nom prénom
Spécifie le nom à stocker dans le .def fichier comme nom de la DLL lorsque le -e
option est utilisée. Si cette option n'est pas présente, alors le nom de fichier donné au -e
sera utilisée comme nom de la DLL.

-m click
-machine click
Spécifie le type de machine pour laquelle le fichier de bibliothèque doit être généré. dlltool a
un type par défaut intégré, selon la façon dont il a été créé, mais cette option peut être
utilisé pour outrepasser cela. Ceci n'est normalement utile que lors de la création de DLL pour un ARM
processeur, lorsque le contenu de la DLL est réellement encodé à l'aide d'instructions Thumb.

-a
--add-indirect
Spécifie que lorsque dlltool crée le fichier d'exportation, il devrait ajouter une section qui
permet de référencer les fonctions exportées sans utiliser la bibliothèque d'import.
Peu importe ce que ça veut dire !

-U
--add-trait de soulignement
Spécifie que lorsque dlltool crée le fichier d'exportation, il doit précéder un
souligner les noms de tous symboles exportés.

--no-leader-underscore
--leader-underscore
Spécifie si le symbole standard doit être obligatoirement préfixé ou non.

--add-stdcall-trait de soulignement
Spécifie que lorsque dlltool crée le fichier d'exportation, il doit précéder un
souligner les noms des exportés stdcall les fonctions. Noms de variables et non-stdcall
les noms de fonction ne sont pas modifiés. Cette option est utile lors de la création compatible GNU
importer des bibliothèques pour les DLL tierces qui ont été créées avec des outils MS-Windows.

-k
--kill-at
Spécifie que @ les suffixes doivent être omis des noms de stdcall
fonctions qui seront importées de la DLL. Ceci est utile lors de la création d'une importation
bibliothèque pour une DLL qui exporte les fonctions stdcall mais sans l'habituel @
suffixe du nom du symbole.

Cela ne change pas le nom des symboles fournis par la bibliothèque d'importation aux programmes
lié à celui-ci, mais uniquement les entrées de la table d'importation (c'est-à-dire la section .idata).

-A
--add-stdcall-alias
Spécifie que lorsque dlltool crée le fichier d'exportation pour lequel il doit ajouter des alias
symboles stdcall sans @ en plus des symboles avec @ .

-p
--ext-prefix-alias préfixe
Causes dlltool pour créer des alias externes pour toutes les importations de DLL avec le
préfixe. Les alias sont créés pour les symboles externes et importés sans
souligner.

-x
--no-idata4
Spécifie que lorsque dlltool crée les exportations et les fichiers de bibliothèque qu'il devrait omettre
la rubrique ".idata4". C'est pour la compatibilité avec certains systèmes d'exploitation.

--use-nul-prefixed-import-tables
Spécifie que lorsque dlltool crée les fichiers d'exportation et de bibliothèque qu'il doit préfixer
les ".idata4" et ".idata5" par zéro un élément. Cela émule l'ancienne bibliothèque d'importation gnu
génération de "dlltool". Par défaut, cette option est désactivée.

-c
--no-idata5
Spécifie que lorsque dlltool crée les exportations et les fichiers de bibliothèque qu'il devrait omettre
la rubrique ".idata5". C'est pour la compatibilité avec certains systèmes d'exploitation.

-I nom de fichier
--identifier nom de fichier
Spécifie que dlltool doit inspecter la bibliothèque d'importation indiquée par nom de fichier et
rapporter, sur "stdout", le(s) nom(s) de la ou des DLL associées. Ceci peut être effectué dans
en plus de toute autre opération indiquée par les autres options et arguments.
dlltool échoue si la bibliothèque d'importation n'existe pas ou n'est pas réellement une importation
une bibliothèque. Voir également --identifier-strict.

--identifier-strict
Modifie le comportement du --identifier option, de sorte qu'une erreur est signalée si
nom de fichier est associé à plusieurs DLL.

-i
--interfonctionnement
Spécifie que dlltool devrait marquer les objets dans le fichier de bibliothèque et exporter le fichier
qu'il produit comme supportant l'interfonctionnement entre le code ARM et le code Thumb.

-n
--nodelete
Donne dlltool conserver les fichiers assembleur temporaires qu'il a utilisés pour créer les exportations
déposer. Si cette option est répétée, dlltool conservera également l'objet temporaire
fichiers qu'il utilise pour créer le fichier de bibliothèque.

-t préfixe
--temp-préfixe préfixe
Donne dlltool utilisé préfixe lors de la construction des noms de l'assembleur temporaire et de l'objet
des dossiers. Par défaut, le préfixe du fichier temporaire est généré à partir du pid.

-v
--verbeux
Faites en sorte que dlltool décrive ce qu'il fait.

-h
--Aidez-moi
Affiche une liste d'options de ligne de commande, puis se ferme.

-V
--version
Affiche le numéro de version de dlltool, puis se ferme.

@filet
Lire les options de ligne de commande à partir de filet. Les options lues sont insérées à la place des
original @filet option. Si filet n'existe pas ou ne peut pas être lu, l'option
seront traités littéralement et non supprimés.

options dans filet sont séparés par des espaces. Un caractère d'espacement peut être inclus
dans une option en entourant l'option entière de guillemets simples ou doubles. Tout
caractère (y compris une barre oblique inverse) peut être inclus en préfixant le caractère à être
inclus avec une barre oblique inverse. Les filet peut lui-même contenir des @ supplémentairesfilet options; tout
ces options seront traitées de manière récursive.

Utilisez i686-w64-mingw32-dlltool en ligne à l'aide des services onworks.net


Ad


Ad