description | title | ms.date | f1_keywords | helpviewer_keywords | ms.assetid | |||||
---|---|---|---|---|---|---|---|---|---|---|
Learn more about: /ASSEMBLYDEBUG (Add DebuggableAttribute) |
/ASSEMBLYDEBUG (Add DebuggableAttribute) |
05/11/2022 |
|
|
94443af3-470c-41d7-83a0-7434563d7982 |
Specify whether to emit the DebuggableAttribute
attribute with debug information tracking and to disable JIT optimizations.
/ASSEMBLYDEBUG
[:DISABLE
]
The /ASSEMBLYDEBUG
linker option emits the DebuggableAttribute
attribute with debug information tracking and disables JIT optimizations. This option is the same as specifying the following attribute in source:
[assembly:Debuggable(true, true)]; // same as /ASSEMBLYDEBUG
/ASSEMBLYDEBUG:DISABLE
emits the DebuggableAttribute
attribute but disables the tracking of debug information and enables JIT optimizations. This option is the same as specifying the following attribute in source:
[assembly:Debuggable(false, false)]; // same as /ASSEMBLYDEBUG:DISABLE
By default, the linker doesn't emit the DebuggableAttribute
attribute.
DebuggableAttribute
can also be added to an assembly directly in source code. For example:
[assembly:Debuggable(true, true)]; // same as /ASSEMBLYDEBUG
You must explicitly specify that a managed image is debuggable. The /Zi
option alone is insufficient.
Other linker options that affect assembly generation are:
-
Open the project's Property Pages dialog box. For details, see Set C++ compiler and build properties in Visual Studio.
-
Select the Configuration Properties > Linker > Debug property page.
-
Modify the Debuggable Assembly property.
- See xref:Microsoft.VisualStudio.VCProjectEngine.VCLinkerTool.AssemblyDebug%2A.