PyCharm'a göz atın . Yıllardır mutlu bir ödeme yapan müşteriyim, ancak ücretsiz bir topluluk sürümü de mevcut.
Bir yoktur dosya gözlemcisi eklentisi uzak makinedeki (RPI) için üzerinden dosya kopyalar. Ve uzaktan hata ayıklama gerçekleştirme yeteneğine sahiptir .
kablo hata ayıklama modülleri
PyCharm uzaktan hata ayıklama kurulumuyla ilgili olarak, yapılacak ilk şey bağlantı kurmaktır pycharm-debug.egg
. Mac'liyim ve benim durumumda dosya var /Applications/PyCharm.app/Contents/debug-eggs/pycharm-debug.egg
. Komut ile RPi'ye kopyaladım:
scp /Applications/PyCharm.app/Contents/debug-eggs/pycharm-debug.egg pi@mediapi:
Bu dosyanın bulunabilmesi için Python'un yolunda bir yerde olması gerekir. Aşağıdakileri çalıştırarak uygun bir yer aradım:
pi@mediapi ~ $ python -c 'import sys; print sys.path'
['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/pymodules/python2.7']
Bu listeden /usr/local/lib/python2.7/dist-packages/
en uygun olduğuna inanıyorum (çünkü içinde /usr/local
), yani:
sudo mv pycharm-debug.egg /usr/local/lib/python2.7/dist-packages/
Ve .pth
yola sokmak için bir dosyaya ihtiyacımız var :
pi@mediapi ~ $ echo /usr/local/lib/python2.7/dist-packages/pycharm-debug.egg | sudo tee -a /usr/local/lib/python2.7/dist-packages/pycharm-debug.pth
Son olarak, kurulumu doğrulayın:
pi@mediapi ~ $ python -c 'import pydevd; print pydevd'
<module 'pydevd' from '/usr/local/lib/python2.7/dist-packages/pycharm-debug.egg/pydevd.py'>
Harika, hata ayıklama modülleri bağlandı. Bu yazı için yazdığım dinleyici senaryosunda hata ayıklayacağım .
PyCharm kurulumu
PyCharm'da şu adrese gidin: Run -> Edit Configurations...
Hit +
sol ve seçmek üstünde işareti Python Remote Debug
. Sadece bir isim verin remote debug
ve işiniz bitti; vur tamam.
Şimdi tıklayın Run -> Debug 'remote debug'
ve hata ayıklama konsolunda bir mesaj göreceksiniz,Use the following code to connect to the debugger
Çizgileri kopyala, benim durumumda böyle görünüyordu:
import pydevd
pydevd.settrace('localhost', port=56112, stdoutToServer=True, stderrToServer=True)
Bunları hata ayıkladığınız dosyanın üstüne yapıştırın ve dosyayı kaydedin.
Dosya senkronizasyonu eklentisini kullanmadan dosyaları rsync kullanarak kopyalarım:
[berto@g6]$ rsync -av ./ pi@mediapi:broadcast/
Şimdi, konfigürasyonun söylediğine dikkat edin localhost
. Hata ayıklayıcıyı bağlamak için en iyi yol, RPi'nin masanızda veya dünyanın her yerinde olabilmesi için SSH'nin bağlantı noktası yönlendirme yeteneklerini kullanmaktır ve aynı şekilde çalışır. Uzak bağlantı noktasını yerel bağlantı noktasına bağlamak için bu komutu kullanarak SSH'yi RPi'ye ekleyin:
[berto@g6]$ ssh -R 56112:localhost:56112 pi@mediapi
PyCharm size bir mesaj göstermelidir Waiting for process connection...
RPi'de programı çalıştırın ve hata ayıklayıcının devreye girdiğini göreceksiniz. Varsayılan olarak, isterseniz pydevd satırından hemen sonra satırda duraklar, isterseniz yapılandırmada değiştirebilirsiniz.
Ve bu noktada uzaktan hata ayıklama yapıyorsunuz! :)