[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[List Home]
|
[cdt-dev] Unable to fetch getLineNumber/Addr2line object using ElfBinaryObject.java
|
- From: Kamakshi Sridhar <itskamakshi@xxxxxxxxx>
- Date: Thu, 20 Oct 2011 16:01:13 +0530
- Delivered-to: cdt-dev@eclipse.org
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; bh=vfKVzFfBjNgtVnFYSaXlnTohag3hhCBo9uq8L9cEsFg=; b=HXZu9oRaLSP6zHm0b/ie7LMHBR7id0BEn38DmyAavXrQs1oi1h9isYPmp5iCrLHZv5 rE63mYkYl0VYzoV1ksT7A9KzE4iUry6X3gDsHiNoiLOJmQFIfRraGs7Q5w2+d0P6ydjU mZcld+M1jxwOMlgt5A2H4Z0jyaBD0yMgPmakY=
Hi All,
I am unable to fetch getLineNumber of any symbol obtained using ELFBinayObject.java and ElfBinaryParser.java, I executed as following :
ElfBinaryObject elfBinaryObject = (ElfBinaryObject) elfParser.createBinaryObject(path);
ISymbol[] symbols = elfBinaryObject.getSymbols();
for(int i = 0; i< symbols.length ; i++){
System.out.println("Line : " + symbols[i].getLineNumber(<some offset value>) + "-- ");
}
it always returns -1.
I have checked the code Symbol.java, there they internally returning the value as -1 only.
//public void getElfBinaryObject
/*
* (non-Javadoc)
*
* @see org.eclipse.cdt.core.IBinaryParser.ISymbol#getLineNumber(long)
*/
public int getLineNumber(long offset) {
return -1;
}
We can achieve the line number by modifying the above code as follows :
public int getLineNumber(long offset) {
int line = -1;
try {
Addr2line addr2line = (Addr2line) binaryObj.getAddressFactory(); // This doesn't work.....
if (addr2line != null) {
line = addr2line.getLineNumber(addr.add(offset));
addr2line.dispose();
}
} catch (IOException e){
}
return line;
}
But for this we doesn't have any way to fetch Addr2Line using ElfBinaryObject.java or ELF.java or the property IAddressFactory.
Please tell how to achieve to find Addr2line object or getLineNumber , as we do in GNUElfBinaryObject.java.
I am working in Windows OS , using Java API's. Please tell me if any patch related to it is been released so far or any other solution for this.
Thanks & Regards,
Kamakshi