Search code examples
delphidebugging

What's the difference between compiler and linker debug information?


I am a little confused why Delphi has Debug information in linking and debug information in compiling.

What is the difference between them ?


Solution

  • Debugging option in the Compiler will add the Debug information to the DCU files.

    Debugging option in the linker will put all debug found in the DCU files into the exe/dll.

    if you're using something like FastMM4 or memslueth you will need both options to help you find any faults.

    If your releasing code you should disable the linker option to greatly reduce your exe size ( and protect your IPR ).

    If you are releasing just the DCU files ( as a 3rd party control/library ) you should turn off the compiler setting before releasing, if you are not supplying source code.