-->
The Visual Basic command-line compiler provides an alternative to compiling programs from within the Visual Studio integrated development environment (IDE). This section contains descriptions for the Visual Basic compiler options. Every compiler option is available in two forms: -option and /option. The documentation only shows the -option form. Compile your RFO BASIC! Programs (.bas) and resources into an APK, directly from your Android phone or tablet! Then share your APKs with friends and family.
The Visual Basic command-line compiler provides an alternative to compiling programs from within the Visual Studio integrated development environment (IDE). This section contains descriptions for the Visual Basic compiler options.
Every compiler option is available in two forms: -option and /option. The documentation only shows the -option form.
In this section
Building from the Command Line
Describes the Visual Basic command-line compiler, which is provided as an alternative to compiling programs from within the Visual Studio IDE.
Describes the Visual Basic command-line compiler, which is provided as an alternative to compiling programs from within the Visual Studio IDE.
Visual Basic Compiler Options Listed Alphabetically
Lists compiler options in an alphabetical table
Lists compiler options in an alphabetical table
Visual Basic Compiler Options Listed by Category
Presents compiler options in functional groups.
-->Presents compiler options in functional groups.
The Visual Basic command-line compiler is provided as an alternative to compiling programs from within the Visual Studio integrated development environment (IDE). The following is a list of the Visual Basic command-line compiler options sorted by functional category.
Every compiler option is available in two forms: -option and /option. The documentation only shows the -option form.
Compiler output
Option | Purpose |
---|---|
-nologo | Suppresses compiler banner information. |
-utf8output | Displays compiler output using UTF-8 encoding. |
-verbose | Outputs extra information during compilation. |
-modulename:<string> | Specify the name of the source module |
-preferreduilang | Specify a language for compiler output. |
Optimization
Option | Purpose |
---|---|
-filealign | Specifies where to align the sections of the output file. |
-optimize | Enables/disables optimizations. |
Output files
Option | Purpose |
---|---|
-doc | Process documentation comments to an XML file. |
-deterministic | Causes the compiler to output an assembly whose binary content is identical across compilations if inputs are identical. |
-netcf | Sets the compiler to target the .NET Compact Framework. |
-out | Specifies an output file. |
-refonly | Outputs only a reference assembly. |
-refout | Specifies the output path of a reference assembly. |
-target | Specifies the format of the output. |
.NET assemblies
Option | Purpose |
---|---|
-addmodule | Causes the compiler to make all type information from the specified file(s) available to the project you are currently compiling. |
-delaysign | Specifies whether the assembly will be fully or partially signed. |
-imports | Imports a namespace from a specified assembly. |
-keycontainer | Specifies a key container name for a key pair to give an assembly a strong name. |
-keyfile | Specifies a file containing a key or key pair to give an assembly a strong name. |
-libpath | Specifies the location of assemblies referenced by the -reference option. |
-reference | Imports metadata from an assembly. |
-moduleassemblyname | Specifies the name of the assembly that a module will be a part of. |
-analyzer | Run the analyzers from this assembly (Short form: -a) |
-additionalfile | Names additional files that don't directly affect code generation but may be used by analyzers for producing errors or warnings. |
Debugging/error checking
Option | Purpose |
---|---|
-bugreport | Creates a file that contains information that makes it easy to report a bug. |
-debug | Produces debugging information. |
-nowarn | Suppresses the compiler's ability to generate warnings. |
-quiet | Prevents the compiler from displaying code for syntax-related errors and warnings. |
-removeintchecks | Disables integer overflow checking. |
-warnaserror | Promotes warnings to errors. |
-ruleset:<file> | Specify a ruleset file that disables specific diagnostics. |
Help
Option | Purpose |
---|---|
-? | Displays the compiler options. This command is the same as specifying the -help option. No compilation occurs. |
-help | Displays the compiler options. This command is the same as specifying the -? option. No compilation occurs. |
Language
Option | Purpose |
---|---|
-langversion | Specify language version: 9|9.0|10|10.0|11|11.0. |
-optionexplicit | Enforces explicit declaration of variables. |
-optionstrict | Enforces strict type semantics. |
-optioncompare | Specifies whether string comparisons should be binary or use locale-specific text semantics. |
-optioninfer | Enables the use of local type inference in variable declarations. |
Preprocessor
Option | Purpose |
---|---|
-define | Defines symbols for conditional compilation. |
Resources
Option | Purpose |
---|---|
-linkresource | Creates a link to a managed resource. |
-resource | Embeds a managed resource in an assembly. |
-win32icon | Inserts an .ico file into the output file. |
-win32resource | Inserts a Win32 resource into the output file. |
Miscellaneous
Option | Purpose |
---|---|
@ (Specify Response File) | Specifies a response file. |
-baseaddress | Specifies the base address of a DLL. |
-codepage | Specifies the code page to use for all source code files in the compilation. |
-errorreport | Specifies how the Visual Basic compiler should report internal compiler errors. |
-highentropyva | Tells the Windows kernel whether a particular executable supports high entropy Address Space Layout Randomization (ASLR). |
-main | Specifies the class that contains the Sub Main procedure to use at startup. |
-noconfig | Do not compile with Vbc.rsp |
-nostdlib | Causes the compiler not to reference the standard libraries. |
-nowin32manifest | Instructs the compiler not to embed any application manifest into the executable file. |
-platform | Specifies the processor platform the compiler targets for the output file. |
-recurse | Searches subdirectories for source files to compile. |
-rootnamespace | Specifies a namespace for all type declarations. |
-sdkpath | Specifies the location of Mscorlib.dll and Microsoft.VisualBasic.dll. |
-vbruntime | Specifies that the compiler should compile without a reference to the Visual Basic Runtime Library, or with a reference to a specific runtime library. |
-win32manifest | Identifies a user-defined Win32 application manifest file to be embedded into a project's portable executable (PE) file. |
-parallel[+|-] | Specifies whether to use concurrent build (+). |
-checksumalgorithm:<alg> | Specify the algorithm for calculating the source file checksum stored in PDB. Supported values are: SHA1 (default) or SHA256. Due to collision problems with SHA1, Microsoft recommends SHA256 or better. |