Hello, I think the ppc64 ELF ABI is officially wierd. For "main" the minimal symbol table contains two symbols vis: main: points at descriptor in .opd sectoin .main: points at main's code entry point Consequently, given only a minimal symbol table, GDB, when given: (gdb) break main will try to insert the breakpoint in the descriptor, and not the function. Trying to enter: (gdb) break .main gets you no where (syntax error :-/) Adding to the fun, GCC's debug info contains the symbol "main" which points at the code address (and not the descriptor) and consequently debugging with symbols works. Yes, this means that "main" has two different values, arrrghghgh!! Attatched is a hack to breakpoint.c that applies "convert from func ptr addr" to any address. This causing the breakpoint code to convert "main" into ".main" and hence work. I don't know if its a right fix, good fix, or of any other alternative fix. However it does work ... help! Andrew