كنت ألعب مع Virtualenv و gdb لتصحيح أخطاء تطبيقات Python (التي تستدعي بعض مكتبات C التي أردت فحصها).
نظام:
$ virtualenv --version
1.11.4
$ uname -a
Linux virtual-machine 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ /usr/bin/python2.7-dbg --version
Python 2.7.6
$ gdb --version
GNU gdb (Ubuntu 7.7-0ubuntu3.1) 7.7
إعداد البيئة الافتراضية:
$ virtualenv -p /usr/bin/python2.7-dbg debugenv
$ source debugenv/bin/activate
اختبار أوامر gdb Python الموسعة (فشل):
(debugenv)$ gdb --args python
(gdb) py-bt
Undefined command: "py-bt". Try "help".
هذا الشخص في StackOverflow لديه حل نشر:
http://stackoverflow.com/questions/22931774/how-to-use-gdb-python-debugging-extension-inside-virtualenv
(debugenv)$ ln -s /usr/lib/debug/usr/bin/python2.7-gdb.py /path/to/debugenv/bin/python2.7-dbg-gdb.py
(debugenv)$ gdb --args python
(gdb) py-bt
Python Exception <class 'gdb.error'> No frame is currently selected.:
Error occurred in Python command: No frame is currently selected.
لست متأكدًا مما إذا كان ينبغي تنفيذ ذلك في virtualenv نفسها إذا اكتشف أنه يتم استخدام ملف تنفيذي لتصحيح أخطاء Python ، لكن هذا كان مزعجًا / مربكًا بعض الشيء للتعامل معه وأردت جعل فريق virtualenv على دراية.
حلوة واجهت نفس المشكلة ، شكرا حتى الآن. إذا لم تؤذي يجب إضافتها.
لقد واجهت هذا الخطأ ، عند استيراد libpython واستخدام py-bt: "حدث خطأ في أمر Python: __init __ () يأخذ 3 وسيطات بالضبط (2 معطى)"
وما زالت هذه المسألة؟
لدي نفس المشكلة:
(gdb) py-list
Undefined command: "py-list"
تم وضع علامة على هذه المشكلة تلقائيًا على أنها قديمة نظرًا لعدم وجود نشاط حديث لها. سيتم إغلاقه إذا لم يحدث أي نشاط آخر. فقط أضف تعليقًا إذا كنت تريد إبقائه مفتوحًا. شكرا لمساهماتكم.
لا تزال هناك مشكلة مع python3.6-dbg على أوبونتو 18.10
التعليق الأكثر فائدة
لا تزال هناك مشكلة مع python3.6-dbg على أوبونتو 18.10