site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com Let's take your example: The target machine is a x86. The development machine is a PPC. -- Terry _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... On Jul 31, 2008, at 10:20 AM, Stéphane Sudre wrote: On Jul 31, 2008, at 6:59 PM, Terry Lambert wrote: Symbol files are created via the kextload command and must specify the load address of the KEXT, which is only known after it is loaded into a kernel. Consider the case where you are developing on a PPC machine, targetting an x86 machine, because you intend to do two machine debugging of the x86 machine. Maybe you are doing this because these are the only two machines you have. The issue is not with the command line. It's that it would be better to keep on using the same name for the machines. Now, I introduce the "host machine". Which one is it? The x86 or PPC? Whichever one you run the kextload command on; in this case, it had better be the x86 machine, AFTER your KEXT is loaded, if you want your symbols to be useful for two machine debugging. In my case, I had 2 x86 Macs so I used the development machine for this section of the instructions and was able to debug remotely (and it works really well). The PPC <-> x86 debug will end up being a particular problem for this exercise, since you must successfully load the KEXT into the x86 machine before you can run the kextstat to get the address you need to supply to kextload to relocate the kext symbols to the correct address so the symbol file can be loaded into gdb to use it for two machine debugging. That basically would mean printf debugging until the load works, and intentionally delaying probe or anything else that might break until you are ready to debug; then kextstat; then kextload to load the symbols on the x86 machine; then copying the symbols over to the PPC machine, then debugging. I think the intent was to not tie the kextload command to the machine doing the debugging vs. the machine being debugged. This email sent to site_archiver@lists.apple.com