Jump to content
Tom Mueller

What is the compiler switch -VN used for?

Recommended Posts

Hello 

 

Some questions:

  • Can somebody explain what the compiler switch -VN is used for? 
  • Where can it be set inside the IDE (Delphi 10.3.1)?
  • Why is this switch the default Delphi 10.3.1 setting for new projects?
  • Why is this switch doubled when the -VT switch is set inside the IDE? (you can see the command line in the "Build" tab of the "Messages" tool window)

 

Any hints would be appreciated!

Share this post


Link to post

If you run the relevant external compiler from a command prompt without any parameters it should give you a list of the available switched and what they do.

Share this post


Link to post

When I create a default CMD Line Project under RIO I get the following feedback under the IDE (message window of the compile)

"Configuration Debug"    ... -V -VN -NBC:\Compiler\DX26\Projects\Bpl ...
"Configuration Release"   ... -NBC:\Compiler\DX26\Projects\Bpl ...
"Configuration Debug and  external TDS enabled (-VT switch)"   ... -V -VN -VT -VN -NBC:\Compiler\DX26\Projects\Bpl ... (doubled?!?)

 

Background: Tom Mueller and I work together in the same environment and we got problems with TestComplete and this missing "magic" -VN when using our command line dcc32 build scripts.

Took use days to find this missing switch but we are still not sure what -VN exactly means and who/what influences it's appearance.

 

Share this post


Link to post

These switches are mentioned in the documentation for the Debug Information setting in the projects Debugging Options

http://docwiki.embarcadero.com/RADStudio/Rio/en/Compiling#Debugging_Options

 

and in the documentation to the Delphi compiler options

http://docwiki.embarcadero.com/RADStudio/Rio/en/DCC32.EXE,_the_Delphi_Command_Line_Compiler#Generating_Debug_Info

 

 

  • Thanks 2

Share this post


Link to post

@Uwe: thank you, that helped

 

the dcc command line help is really not complete

  -V = Debug information in EXE
  -VR = Generate remote debug (RSM)
  -VT = Debug information in TDS
  -VN = TDS symbols in namespace -> that is probably wrong or misleading

 

but the help link you sent explains it!

-V Generate debug info in the .exe file
-VN Generate debug info with namespace or unit scope name
-VR Generate debug info in .rsm file (for Delphi, set by the Include remote debug symbols option on the Project > Options > Delphi Compiler > Linking page)
-VT Generate debug info in .tds file (for C++, set by the Place debug information in separate TDS file option on the Project > Options > Delphi Compiler > Linking page)

The -VN option does not specify where the debug information is generated. For example, to generate debug information in the .exe file and to include the namespace or unit scope information, you need to specify two options in your DCC32 command, as follows ...

  • Thanks 1

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×