Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] objdump/addr2line problems

> 
> Hi,
> 
> I am hoping that the buildmodel and corresponding toolchain interfaces fix 
> this for 1.1 or 1.2. We had this issue for Xtensa Xplorer. To fix it we put 
> in a "cdt tool provider" extension point that provided these tools.
> 
> This is the interface that we ended up adding as a stop gap until it gets 
> really fixed:
> 

The framework is in place right now to do this, albeit not well documented

	cdt-home/docs/binaryparser.html

and not well-known.  Its the IBinaryParser extension point.

We provide two default implementations, they are base on the ELF and COFF
classes.

ElfParser.java
PEParser.java


We could probrably provide a third one that will suit your needs.

	BinutilsBinaryParser.java

public class BinutilsBinaryParser implements IBinaryParser {
	....
       // ISymbol
	public String getFilename() {
		// spawn addr2line parse it and get the file.
	}
}

This could be implemented in term of addr2line, objdump, nm, ar etc ...


For example, Tensilica could provide its own implementation.

public class TensilicaBinaryParser implements IBinaryParser {
....
}


The user at project creation(in the wizard), can choose 
now only "Elf" and "Coff" shows but we could put:

"GNU Binutils"
"Tensilica Tools"


The binary parser can be change in property page.

The binary parser API was a first draft, meaning always open
to change/rewrite/feedback/patches etc ..



Back to the top