Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   C/C++ (http://www.chiefdelphi.com/forums/forumdisplay.php?f=183)
-   -   Disassemble VxWorks (WindRiver) ELF Binaries? (http://www.chiefdelphi.com/forums/showthread.php?t=72533)

GeneralFailure 01-20-2009 06:30 PM

Disassemble VxWorks (WindRiver) ELF Binaries?
 
Can anyone tell me or point me towards the documentation that explains how to disassemble a VxWorks (WindRiver) ELF binary?

I'm able to get an GNU objdump-esque memory map by clicking on binaries that have been built, but when I choose the disassembly option, I get a blank screen.

I do not want to interactively disassemble the binary on the target, but only check on the location of a specific (fatal) exception in application code.

gvarndell 01-20-2009 06:50 PM

Re: Disassemble VxWorks (WindRiver) ELF Binaries?
 
Quote:

Originally Posted by GeneralFailure (Post 804668)
Can anyone tell me or point me towards the documentation that explains how to disassemble a VxWorks (WindRiver) ELF binary?

I'm able to get an GNU objdump-esque memory map by clicking on binaries that have been built, but when I choose the disassembly option, I get a blank screen.

I do not want to interactively disassemble the binary on the target, but only check on the location of a specific (fatal) exception in application code.

You have objdump -- it's called objdumpppc (yes, 3 p's).
Use a vxWorks development shell and it will be in your path.
Programs->Wind River->VxWorks 6.3 and General Purpose Technologies->VxWorks Development Shell.

gvarndell 01-20-2009 07:23 PM

Re: Disassemble VxWorks (WindRiver) ELF Binaries?
 
1 Attachment(s)
There's a much easier way to disassemble -- if you're connected to the cRIO with Workbench debugger.
Use the Debug Symbol Browser.

GeneralFailure 01-20-2009 07:27 PM

Re: Disassemble VxWorks (WindRiver) ELF Binaries?
 
Quote:

Originally Posted by gvarndell (Post 804682)
You have objdump -- it's called objdumpppc (yes, 3 p's).
Use a vxWorks development shell and it will be in your path.
Programs->Wind River->VxWorks 6.3 and General Purpose Technologies->VxWorks Development Shell.

Perfect, this is exactly what I needed to get the disassembly.

Any tips for the address space? The exception address doesn't match any of the addresses in the binary -- I assume they've been relocated.

I've got a Task address, but it doesn't seem to correspond to an address in the ELF binary either.

GeneralFailure 01-20-2009 07:29 PM

Re: Disassemble VxWorks (WindRiver) ELF Binaries?
 
Quote:

Originally Posted by gvarndell (Post 804717)
There's a much easier way to disassemble -- if you're connected to the cRIO with Workbench debugger.
Use the Debug Symbol Browser.

This would be the preferred method I would use if the target still had the binary to be debugged on it. I'm trying to debug this off-line.

gvarndell 01-20-2009 07:41 PM

Re: Disassemble VxWorks (WindRiver) ELF Binaries?
 
Quote:

Originally Posted by GeneralFailure (Post 804720)
Perfect, this is exactly what I needed to get the disassembly.

Any tips for the address space? The exception address doesn't match any of the addresses in the binary -- I assume they've been relocated.

I've got a Task address, but it doesn't seem to correspond to an address in the ELF binary either.

What is the exception? What is the address?
The exception address is where the PC was when the exception happened.
It's probably in one of the DKMs that get downloaded to the target.
This can be tricky because you can't easily 'predict' where the kernel will load DKMs.
However, you can 'see' where they actually got loaded by typing 'moduleShow' in the taget console.


All times are GMT -5. The time now is 10:19 AM.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi