Options de l’éditeur de liens

LINK.exe lie des fichiers objet et des bibliothèques COFF (Common Object File Format) pour créer un fichier exécutable (EXE) ou une bibliothèque de liens dynamiques (DLL).

Le tableau ci-dessous répertorie les options pour LINK.exe. Pour plus d’informations sur LINK, consultez :

Sur la ligne de commande, les options de l’éditeur de liens ne respectent pas la casse ; par exemple, /base et /BASE signifie la même chose. Pour plus d'informations sur la façon de spécifier une option quelconque sur la ligne de commande ou dans Visual Studio, consultez la documentation relative à cette option.

Vous pouvez utiliser le comment pragma pour spécifier certaines options d’éditeur de liens.

Options de l’éditeur de liens répertoriées par ordre alphabétique

Option Objectif
@ Spécifie un fichier réponse.
/ALIGN Spécifie l’alignement de chaque section.
/ALLOWBIND Spécifie qu’une DLL ne peut pas être liée.
/ALLOWISOLATION Spécifie un comportement pour la recherche de manifeste.
/APPCONTAINER Spécifie si l’application doit s’exécuter au sein d’un environnement de processus appcontainer.
/ARM64XFUNCTIONPADMINX64 Spécifie le nombre minimal d’octets de remplissage entre les fonctions x64 dans les images ARM64X.17.8
/ASSEMBLYDEBUG Ajoute l’attribut DebuggableAttribute à une image managée.
/ASSEMBLYLINKRESOURCE Crée un lien à une ressource managée.
/ASSEMBLYMODULE Spécifie qu’un module MSIL (Microsoft Intermediate Language) doit être importé dans l’assembly.
/ASSEMBLYRESOURCE Incorpore un fichier de ressources managé dans un assembly.
/BASE Définit une adresse de base pour le programme.
/CETCOMPAT Marque le binaire comme étant compatible avec CET Shadow Stack.
/CGTHREADS Définit le nombre de threads de cl.exe à utiliser pour l’optimisation et la génération de code quand la génération de code durant l’édition de liens est spécifiée.
/CLRIMAGETYPE Définit le type (IJW, pure ou sécurisée) d’une image CLR.
/CLRSUPPORTLASTERROR Préserve le dernier code d’erreur des fonctions qui sont appelées via le mécanisme P/Invoke.
/CLRTHREADATTRIBUTE Spécifie l’attribut de thread à appliquer au point d’entrée de votre programme CLR.
/CLRUNMANAGEDCODECHECK Spécifie si l’éditeur de liens applique l’attribut SuppressUnmanagedCodeSecurity aux stubs P/Invoke générés par l’éditeur de liens qui appellent du code managé dans des DLL natives.
/DEBUG Crée des informations de débogage.
/DEBUGTYPE Spécifie les données à inclure dans les informations de débogage.
/DEF Passe un fichier de définition de module (.def) à l’éditeur de liens.
/DEFAULTLIB Effectue une recherche dans la bibliothèque spécifiée quand des références externes sont résolues.
/DELAY Contrôle le chargement différé des DLL.
/DELAYLOAD Entraîne le chargement différé de la DLL spécifiée.
/DELAYSIGN Signe partiellement un assembly.
/DEPENDENTLOADFLAG Définit les indicateurs par défaut sur les charges de DLL dépendantes.
/DLL Génère une DLL.
/DRIVER Crée un pilote en mode noyau.
/DYNAMICBASE Spécifie s’il faut générer une image exécutable qui est rebase au moment du chargement à l’aide de la fonctionnalité de randomisation de disposition de l’espace d’adressage (ASLR).
/ENTRY Définit l’adresse de départ.
/ERRORREPORT Action déconseillée. Le rapport d’erreurs est contrôlé par les paramètres de rapport d’erreurs Windows (WER ).
/EXPORT Exporte une fonction.
/FILEALIGN Aligne les sections dans le fichier de sortie sur plusieurs d’une valeur spécifiée.
/FIXED Crée un programme qui peut être chargé uniquement à son adresse de base préférée.
/FORCE Force un lien à se terminer même avec des symboles non résolus ou des symboles définis plusieurs fois.
/FUNCTIONPADMIN Crée une image qui peut être corrigée en mémoire.
/GENPROFILE, /FASTGENPROFILE Ces deux options spécifient la génération d’un .pgd fichier par l’éditeur de liens pour prendre en charge l’optimisation guidée par profil (PGO). /GENPROFILE et /FASTGENPROFILE utilisent des paramètres par défaut différents.
/GUARD Active la protection du flux de contrôle.
/HEAP Définit la taille du tas, en octets.
/HIGHENTROPYVA Spécifie la prise en charge de la fonctionnalité de randomisation du format d’espace d’adresse (ASLR) 64 bits de forte entropie.
/IDLOUT Spécifie le nom du .idl fichier et d’autres fichiers de sortie MIDL.
/IGNORE Supprime la sortie des avertissements spécifiés de l’éditeur de liens.
/IGNOREIDL Empêche le traitement des informations d’attribut dans un .idl fichier.
/ILK Remplace le nom de fichier de base de données incrémentielle par défaut.
/IMPLIB Remplace le nom par défaut de la bibliothèque d’importation.
/INCLUDE Force les références de symboles.
/INCREMENTAL Contrôle l’édition de liens incrémentiels.
/INFERASANLIBS Utilise des bibliothèques de nettoyage déduites.
/INTEGRITYCHECK Spécifie que le module requiert une vérification de signature au moment du chargement.
/KERNEL Créez un binaire en mode noyau.
/KEYCONTAINER Spécifie un conteneur de clé pour signer un assembly.
/KEYFILE Spécifie une clé ou une paire de clés pour signer un assembly.
/LARGEADDRESSAWARE Indique au compilateur que l’application prend en charge les adresses supérieures à 2 gigaoctets
/LIBPATH Spécifie un chemin d’accès pour effectuer la recherche avant le chemin d’accès de la bibliothèque d’environnement.
/LINKREPRO Spécifie un chemin d’accès pour générer des artefacts de reproduction de liens.
/LINKREPROTARGET Génère une reproduction de liens uniquement lors de la production de la cible spécifiée.16.1
/LTCG Spécifie la génération du code durant l’édition de liens.
/MACHINE Spécifie la plateforme cible.
/MANIFEST Crée un fichier manifeste côte à côte et l’incorpore éventuellement dans le fichier binaire.
/MANIFESTDEPENDENCY Spécifie une <section dépendanteAssembly> dans le fichier manifeste.
/MANIFESTFILE Modifie le nom par défaut du fichier manifeste.
/MANIFESTINPUT Spécifie un fichier d’entrée de manifeste pour que l’éditeur de liens le traite et l’incorpore dans le fichier binaire. Vous pouvez utiliser cette option plusieurs fois pour spécifier plusieurs fichiers d’entrée de manifeste.
/MANIFESTUAC Spécifie si les informations de contrôle de compte d’utilisateur sont incorporées dans le manifeste du programme.
/MAP Crée un fichier de mappage.
/MAPINFO Inclut les informations spécifiées dans le fichier de mappage.
/MERGE Combine des sections.
/MIDL Spécifie les options de ligne de commande MIDL.
/NATVIS Ajoute des visualiseurs de débogueur à partir d’un fichier Natvis à la base de données du programme (PDB).
/NOASSEMBLY Supprime la création d’un assembly .NET Framework.
/NODEFAULTLIB Ignore toutes les bibliothèques par défaut (ou celles spécifiées) quand des références externes sont résolues.
/NOENTRY Crée une DLL de ressource uniquement.
/NOFUNCTIONPADSECTION Désactive le remplissage des fonctions pour les fonctions dans la section spécifiée.17.8
/NOLOGO Supprime la bannière de démarrage.
/NXCOMPAT Marque un exécutable comme étant vérifié comme compatible avec la fonctionnalité de prévention de l’exécution des données Windows.
/OPT Contrôle les optimisations LINK.
/ORDER Place les COMDAT dans l’image dans un ordre prédéterminé.
/OUT Spécifie le nom du fichier de sortie.
/PDB Crée un fichier PDB.
/PDBALTPATH Utilise un autre emplacement pour enregistrer un fichier PDB.
/PDBSTRIPPED Crée un fichier PDB qui n’a aucun symbole privé.
/PGD Spécifie un .pgd fichier pour les optimisations guidées par profil.
/POGOSAFEMODE Obsolète Crée une build instrumentée PGO thread-safe.
/PROFILE Génère un fichier de sortie utilisable avec le profileur Outils d’analyse des performances.
/RELEASE Définit la somme de contrôle dans l’en-tête .exe .
/SAFESEH Spécifie que l’image contiendra une table de gestionnaires d’exceptions sécurisés.
/SECTION Remplace les attributs d’une section.
/SOURCELINK Spécifie un fichier SourceLink à ajouter à la base de données PDB.
/STACK Définit la taille de la pile, en octets.
/STUB Attache un programme stub MS-DOS à un programme Win32.
/SUBSYSTEM Indique au système d’exploitation comment exécuter le .exe fichier.
/SWAPRUN Indique au système d’exploitation de copier la sortie de l’éditeur de liens vers un fichier d’échange avant son exécution.
/TIME L’éditeur de liens de sortie transmet les informations de minutage.
/TLBID Spécifie l’ID de ressource de la bibliothèque de types générée par l’éditeur de liens.
/TLBOUT Spécifie le nom du .tlb fichier et d’autres fichiers de sortie MIDL.
/TSAWARE Crée une application conçue spécifiquement pour s’exécuter sous Terminal Server.
/USEPROFILE Utilise des données d’apprentissage d’optimisation guidées par profil pour créer une image optimisée.
/VERBOSE Imprime les messages de progression de l’éditeur de liens.
/VERSION Affecte un numéro de version.
/WHOLEARCHIVE Inclut chaque fichier objet des bibliothèques statiques spécifiées.
/WINMD Active la génération d’un fichier de métadonnées Windows Runtime.
/WINMDFILE Spécifie le nom de fichier du fichier de sortie winmd (Windows Runtime Metadata) généré par l’option /WINMD éditeur de liens.
/WINMDKEYFILE Spécifie une clé ou une paire de clés pour signer un fichier de métadonnées Windows Runtime.
/WINMDKEYCONTAINER Spécifie un conteneur de clé pour signer un fichier de métadonnées Windows.
/WINMDDELAYSIGN Signe partiellement un fichier de métadonnées Windows Runtime en.winmd plaçant la clé publique dans le fichier winmd.
/WX Traite les avertissements de l’éditeur de liens en tant qu’erreurs.

16.1 Cette option est disponible à partir de Visual Studio 2019 version 16.1.
17.8 Cette option est disponible à partir de Visual Studio 2022 version 17.8.

Voir aussi

Référence à la génération d’un programme C/C++
Informations de référence sur l’éditeur de liens MSVC