Jay wrote:
Now, what I'd also like to be able to do is to put a breakpoint in the
source of my client app, explicitly start up my client app in the debugger,
and when I hit the breakpoint in the client source, I'd like to be able to
step through the client source and then into the source code of my library.
In other words, I'd like to be able to step into the source code of a
function residing in MyLib.prc just as though it were a function residing in
MyLibClient.prc. Is there some way analagous to above that I can tell the
debugger that the library's source code resides in the directory structure
containing MyLib.prc? If there is, I'd very much appreciate finding out how
to do so.
Ben answered:
This can't be done with the current V9 debugger, and we are not planning on
adding this capability, and it is a pretty difficult task. The problem is
that a shared library call is a system call. The debugger just sees the
shared library call the same way it would see a call to FrmDrawForm or
StrLen -- it is a system trap. To step into this trap requires a lot of
additional logic that isn't in the CW debugger. To complicate things, a call
to one shared library looks exactly like a call to any other shared library
-- only the leading parameter, the libRef, distinguishes them. Now, with V9,
you can debug your client app and add the shared library to the "Other
Executables" pref panel, and the debugger will pull in symbols for both PRC
files, and you can set BPs in both. Stepping into the library code still
won't work, but if you set BPs on all the routines, you can trace what's
happening to some extent. -- Ben Combee <[EMAIL PROTECTED]> CodeWarrior
for Palm OS technical lead Palm OS programming help @ www.palmoswerks.com 

Hi Ben,

Thanks very much for your exceedingly prompt reply. I didn't think there was
a way to do what I wanted, but there's no harm in asking the experts. In any
case, I know that you can't do the equivalent of what I was asking about in
MS DevStudio using VC++. Still, I held some faint glimmer of hope that the
Metroworks developers had filled a gap left by the Microsoft developers.

The trick using the "Other Executables" sounds pretty good, but I haven't
yet figured out how to use it. I just did what you suggested, namely, I
added MyLib.prc to the Other Executables panel for MyLibClient and put a
breakpoint in both a function in MyLibClient as well as in a function in
MyLib which is called by the first function. I started up the debugger, hit
the first breakpoint, hit Run, but didn't hit the second breakpoint in
MyLib. What am I missing here? What exactly does this trick do for me, and
how do I make use of it?

Thanks again,
Jay

-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/support/forums/

Reply via email to