google/pyringe

Arch Linux not supported

TehMillhouse opened this issue · 3 comments

Due to the lack of a a 'python-devel'-like package on Arch Linux, there are no symbols available unless you compile python yourself.

Headers? Yes. Debugging symbols are missing however, unfortunately.
After attaching gdb to a python2 process:
Arch:

(gdb) info variable interp_head
All variables matching regular expression "interp_head":

Non-debugging symbols:
0x00007f63317fb4b0  interp_head

Debian (with python-dbg installed):

(gdb) info variable interp_head
All variables matching regular expression "interp_head":

File ../Python/pystate.c:
PyInterpreterState *interp_head.42174;

So the arch binary has been stripped of debugging information which could tell gdb about the type structure. p 'interp_head.42174'->tstate_head works on debian, but on arch p interp_head->tstate_head yields
Attempt to extract a component of a value that is not a structure pointer.

Yes, i just deleted my comment after i realized my mistake :)

It looks like the python3 build distributed by Arch has debugging symbols, so assuming that doesn't change overnight (knowing Arch, it might), pyringe might end up becoming useful for Arch users after all.