Chcę opracować skrypt Raspberry Python od strony systemu Windows, z kilku powodów: chcę zachować cały kod (więcej) bezpieczny na moim komputerze, na wypadek, gdy usmażę RPi / wypróbuję inny projekt / ponownie zainstaluję Pi. Również mój główny komputer z dwoma ekranami jest w systemie Windows i uważam, że używanie vima przez SSH (z kitem) nie jest dobrym sposobem na zrobienie tego (osobista opinia, ale nie uważam tego za ergonomiczne).
Znalazłem to: http://visualgdb.com/tutorials/raspberry/, co wydaje się pozwalać mi rozwijać aplikację C + dla Raspberry, kompilować ją zdalnie i tak dalej.
Czy istnieje coś równoważnego w rozwoju skryptu Python?
Co w zasadzie pozwoli mi:
- Aby rozwinąć się w Pythonie w moich oknach
- Aby nacisnąć przycisk „Uruchom” i uruchomić skrypt (y) w RPi i uruchomić
- (Rozwiązanie marzeń) Aby umieścić punkty przerwania i debugować?
Odpowiedzi:
Sprawdź PyCharm . Od lat jestem szczęśliwym klientem płacącym, ale dostępna jest również bezpłatna edycja społeczności .
Istnieje wtyczka obserwatora plików , która kopiuje pliki na komputer zdalny (twoje RPi). Ma także możliwość zdalnego debugowania .
podłącz moduły debugujące
Jeśli chodzi o konfigurowanie zdalnego debugowania PyCharm, pierwszą rzeczą do zrobienia jest połączenie
pycharm-debug.egg
. Jestem na komputerze Mac iw moim przypadku plik znajduje się na/Applications/PyCharm.app/Contents/debug-eggs/pycharm-debug.egg
. Skopiowałem go do mojego RPi za pomocą polecenia:Ten plik musi znajdować się gdzieś na ścieżce Pythona, aby można go było znaleźć. Szukałem odpowiedniego miejsca, uruchamiając następujące czynności:
Z tej listy uważam, że
/usr/local/lib/python2.7/dist-packages/
jest najbardziej odpowiedni (ponieważ jest w środku/usr/local
), więc:Potrzebujemy
.pth
pliku, aby wstrzyknąć go do ścieżki:Na koniec sprawdź konfigurację:
Fajnie, moduły debugujące są podłączone. Włączone do debugowania skryptu. Mam zamiar debugować skrypt słuchacza, który napisałem dla tego postu .
Konfiguracja PyCharm
W PyCharm przejdź do
Run -> Edit Configurations...
Naciśnij
+
znak w lewym górnym rogu i wybierzPython Remote Debug
. Po prostu nadaj mu nazwęremote debug
i gotowe! naciśnij OK.Teraz kliknij,
Run -> Debug 'remote debug'
a zobaczysz komunikat w konsoli debugowania,Use the following code to connect to the debugger
Skopiuj linie, w moim przypadku wyglądały tak:
Wklej je u góry debugowanego pliku i zapisz plik.
Bez użycia wtyczki synchronizacji plików kopiuję pliki za pomocą rsync:
Teraz zauważ, że konfiguracja mówi
localhost
. Najlepszym sposobem na podłączenie debuggera jest skorzystanie z funkcji przekierowania portów SSH, dzięki czemu RPi może znajdować się na biurku lub na całym świecie i działa w ten sam sposób. SSH do RPi za pomocą tego polecenia, aby połączyć port zdalny z portem lokalnym:PyCharm powinien pokazać ci wiadomość
Waiting for process connection...
Na RPi uruchom program, a zobaczysz, jak uruchamia się debugger. Domyślnie zatrzymuje się on na linii zaraz za linią pydevd, którą możesz zmienić w konfiguracji, jeśli chcesz.
W tym momencie zdalnie debugujesz! :)
źródło
Jedną z opcji jest po prostu przechowywanie skryptów Python na dysku sieciowym.
Na przykład cały mój kod przechowuję na laptopie (odpowiednio zabezpieczony) w katalogu o nazwie code. Eksportuję katalog do sieci za pomocą NFS.
Na Pi katalog laptopa NFS jest odwzorowany na / code.
To pozwala mi rozwijać się na laptopie (lub Pi) i uruchamiać skrypt na Pi po prostu przez ssh'ing do Pi i użycie /code/script.py.
Ogólnie stwierdzam, że Python ujawnia wystarczająco dużo o moich błędach ze swoim śladem wstecznym, abym nie potrzebował dodatkowych narzędzi do debugowania.
źródło