I’m building a project that uses the JVCL plugin system, which relies on runtime Delphi packages, and ever since I added it to my project, debugging has become a nightmare because I’m no longer able to step-trace into the source of any VCL or RTL units. They’re all marked as gray dots in the debugger, (when the relevant functions appear at all in the call stack; sometimes I get very strange results,) and it’s driving me crazy. Does anyone know how to get my debug DCU functionality back? (Aside from the obvious: rip out all the plugin-related code. That would work, but it wouldn’t really help.)
Edit: Just to be clear, I can trace anything else in my project. JVCL code. Other 3rd party libraries. My own code. All of it shows up just fine in the debugger. Just not the Delphi RTL and VCL code–the stuff that the compiler option "use debug DCUs" is supposed to grant you access to.
This is working as designed.
When you are building with packages, you are executing the package code, and not using any DCU’s. Therefore, the DCU’s are compiled in, and you don’t get access to the Debug DCU’s.
You can either turn off packages altogether, or don’t compile with the specific packages you want to debug. You can choose what packages should be used or not used, and the ones that aren’t used will be ‘debuggable’ with the Debug DCU’s.