Notice

The forum is in read only mode.

  • Page:
  • 1
  • 2

TOPIC: Symbols not found with remote debugging

Symbols not found with remote debugging 8 years 4 months ago #1980

Can someone who has managed to do remote debugging on a Win32 C++ app be so very kind and have a look at my setup to see if there is some step missing that may be the reason why the remote debugger can't find the symbol file?

I have the following setup:

Local machine with RAD Studio XE6: Windows 7 x64 sp1 where I've build a 32-bit Windows C++ app (app.exe)
Remote machine for debug: Windows 7 x86 sp1, PA-server running

Local machine setup with platform profile to remote machine, and deplayment works fine.

If I do Run/Load process/Local/Load then my app.exe loads on the local machine and I get a log saying that app.exe "Has Debug Info"

But if I can do Run/Load process/Remote/Load, then app.exe loads and starts on the remote machine, but the log says "No Debug Info" for app.exe even if the app.tds is in the same remote directory as app.exe

What magic is needed to get the remote rmtdbg to pick up the symbols from app.tds ?

Regards
MatsW

Symbols not found with remote debugging 8 years 4 months ago #2060

Exactly the same problem (but occuring on C++Builder® 2007 R2) is described in Quality Central #61360 ( qc.embarcadero.com/wc/qcmain.aspx?d=61360 ), and the solution is described as

Set the registry value „Disable Multiple Evaluators” in the Windows Registry under the hive
HKEY_CURRENT_USER\Software\Borland\BDS\5.0 Debugging\Borland Debuggers
from "1" to "0"

But I've checked HKEY_CURRENT_USER\Software\Embarcadero\BDS\14.0\Debugging\Embarcadero Debuggers\Disable Multiple Evaluators, and it's set to 0

So it seems like this is an old problem which really hasn't been taken care of properly. So the question is, has anybody managed to do get remote debugging with C++ app to work?

Symbols not found with remote debugging 8 years 4 months ago #2067

If I rebuild the app for 64-bit Windows, and deploy it to a Windows 7 x64 sp1, with exactly the same PAserver configuration, then breakpoints work.

So there seems to be some problem in remote debugging of a Windows-32 app on a remote Windows-32 host from a Windows-64 host. Is this a know problem?

Symbols not found with remote debugging 8 years 4 months ago #2096

Hi Mats,

Can you try the following steps and let us know if you can hit the breakpoint?

a. Create a simple C++ console app, add line breakpoint
b. Create remote connection profile to the remote machine
c. Set Target platform to win32, and assign remote connection profile
d. Launch PAServer on the remote machine
e. Press F9
Expected: app to be deployed to remote machine, debug session started, and line breakpoint is hit.


f. Now, terminate the app
g. Shutdown the IDE
h. Launch IDE again
i. Open the project created in step a) above
j. Set line breakpoint (like step a) above)
k. Run | Load Process | Remote
Remote path: <projectname>\<projectname>.exe e.g Project1\Project1.exe
Remote host: click on … button, and select remote profile created in step b) above
After load: select run
l. Press Load button
Expected: process is launched remotely, and line breakpoint is hit



m. Open the project where debug symbol is not loaded, set target platform to win32, and set connection profile
n. Set line breakpoint, and F9, do the symbols get loaded and the breakpoint is hit?

Symbols not found with remote debugging 8 years 4 months ago #2104

Hi,

Thanks for looking at this

Host: Win7 Ultimate x64 runing RAD Studio XE6 upd1
Targ: Win7 Ultimate x32 clean install, just rebooted

PAserver started

C++ console app with breakpoint
"Debug configuration - 32 bit Windows platform"
Target "32 bit Windows - Snotra-x32"
Press F9

Thread Start: Thread ID: 1048. Process Test2.exe (968)
Process Start: C:\Data\Embarcadero\PAserver\Administratör-Snotra-x32\Test2\Test2.exe. Base Address: $00400000. Process Test2.exe (968)
Module Load: Test2.exe. No Debug Info. Base Address: $00400000. Process Test2.exe (968)
Module Load: ntdll.dll. No Debug Info. Base Address: $76F60000. Process Test2.exe (968)
Module Load: KERNEL32.dll. No Debug Info. Base Address: $76040000. Process Test2.exe (968)
Restart IDE

C++ console app with breakpoint
"Debug configuration - 32 bit Windows platform"
Target "32 bit Windows - Snotra-x32", Project/Deployment, Click Connect Remote Machine, Remote Status "Same"
Press F9

Thread Start: Thread ID: 3416. Process Test2.exe (3380)
Process Start: C:\Data\Embarcadero\PAserver\Administratör-Snotra-x32\Test2\Test2.exe. Base Address: $00400000. Process Test2.exe (3380)
Module Load: Test2.exe. No Debug Info. Base Address: $00400000. Process Test2.exe (3380)
Module Load: ntdll.dll. No Debug Info. Base Address: $76F60000. Process Test2.exe (3380)
Module Load: KERNEL32.dll. No Debug Info. Base Address: $76040000. Process Test2.exe (3380)
Restart IDE

C++ console app with breakpoint
"Debug configuration - 32 bit Windows platform"
Target "32 bit Windows - Snotra-x32"
Run | Load Process | Remote Remote path: Test2\Test2.exe
Remote host: Snotra-x32
After load: Do not run
Load

Thread Start: Thread ID: 2316. Process Test2.exe (500)
Process Start: C:\Data\Embarcadero\PAserver\Administratör-Snotra-x32\Test2\Test2.exe. Base Address: $00400000. Process Test2.exe (500)
Module Load: Test2.exe. No Debug Info. Base Address: $00400000. Process Test2.exe (500)
Module Load: ntdll.dll. No Debug Info. Base Address: $76F60000. Process Test2.exe (500)

Breakpoint is overcrossed

Restart IDE

C++ console app with breakpoint
"Debug configuration - 32 bit Windows platform"
Target "32 bit Windows" (no profile, local debug)
Press F9

Thread Start: Thread ID: 8488. Process Test2.exe (7628)
Process Start: C:\Data\C++ Builder project\Test2\.\Win32\Debug\Test2.exe. Base Address: $00400000. Process Test2.exe (7628)
Module Load: Test2.exe. Has Debug Info. Base Address: $00400000. Process Test2.exe (7628)
Module Load: ntdll.dll. No Debug Info. Base Address: $76F80000. Process Test2.exe (7628)

Source Breakpoint at $0040120F: C:\Data\C++ Builder project\Test2\Test2.cpp line 15. Process Test2.exe (7628)

So, so the local debugger find the symbols, but the remote don't.

Symbols not found with remote debugging 8 years 3 months ago #2134

I've now tested with a clean install of RAD Studio XE7 on Win7 x64 development host, and XE7 PAserver on target using the projects above. Still the same result: "No Debug Info"
  • Page:
  • 1
  • 2
Moderators: April Anne