Używam Ubuntu 14.04, gdzie python3 jest domyślnym pakietem systemowym.Jak zmienić interpretera Pythona, którego używa gdb?
chcę debugować programy Python2.7 z gdb, ale wydaje mi się napotkać ten problem:
kiedy jestem w gdb, używając komendy py
stawia mnie w tłumacza, więc pobiegł w tych poleceń interpreter:
Najpierw należy sprawdzić wersję interpretera:
(gdb) py
>import sys
>print(sys.version)
>end
3.4.0 (default, Apr 11 2014, 13:08:40)
[GCC 4.8.2]
Potem sprawdź co interpreter wykonywalny jest używany
(gdb) py
>import sys
>print(sys.executable)
>end
/usr/bin/python
(gdb)
Następnie w bash, sprawdzić tłumacza:
12:34]hostname ~ $ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Dec 21 2013 /usr/bin/python -> python2.7
Więc chociaż gdb mówi, że przy moim 2.7 tłumacza, to faktycznie za pomocą innego. Potrzebuję interpretera 2.7, aby móc go używać z pythonowymi rozszerzeniami określonymi w pakiecie "python2.7-dbg" pakietu ubuntu, ponieważ o ile mi wiadomo, nie ma takiego pakietu dla Pythona 3.4, a nawet jeśli był, programy, które chcę debugować, uruchamiają pythona 2.7
Moje pytanie brzmi: w jaki sposób mogę użyć tłumacza, którego chcę?
[EDIT] Nie odinstalować python3 btw. Zrobiłem to na Ubuntu 14.04 i zrujnowało mój system. Nie udało się uzyskać tego ponownie. Obecnie używam go bez menedżera okien (jest fajny i 1337), ale masz pomysł.
dlaczego Pythona 3 jest domyślny? –
Zgaduję, ponieważ Ubuntu tak mówi ...? nie czytałem dużo, ale https://wiki.ubuntu.com/Python/3 mówi to, że wiele skryptów zostało przeniesionych do Pythona 3 (choć nie wszystkie). W każdym razie moja instalacja gdb (lub kompilacja lub cokolwiek innego) w połączeniu z python3 –
Powiązany numer: https://bugs.launchpad.net/ubuntu/+source/gdb/+bug/1241668 –