Cross-compilation. Programowanie RPI na Windows.

Każdy pewnie, zaczynając zabawę z raspbbery pi, zastanawiał się, w jaki sposób pisać programy na te urządzenie. Czy w systemie co dostarcza raspberyy, a może na komputerze stacjonarnym i później taki kod przenosić na malinkę. Tutaj dobrym rozwiązanie okazuje się Cross-compilation. Polega ona, na tym (w skrócie), że piszemy program na innym urządzeniu – w tym przypadku na komputerze stacjonarnym, laptopie – a kompilujemy na urządzeniu docelowym, czyli raspberry pi.

Dobra, to już wiemy w jaki sposób i gdzie będziemy pisać program. Ale jakie narzędzie do tego wykorzystać. Przeszukałem prawie wszystkie czeluści internetu w poszukiwaniu jak najlepszego rozwiązania. Z przyzwyczajenia do Eclipse i do Visual Studio, uporczywie szukałem bezpłatnych rozwiązań croos-kompilacji. Jedynie co znalazłem to płatne rozwiązania, a to mi nie pasowało więc szukałem dalej (ale i tak wykorzystam te rozwiązanie, bo wygląda na ciekawe – jest to VisualGDB https://visualgdb.com/tutorials/raspberry/crosscompiler/ ). Okazało się, że IDE znajdujące się na malince umożliwia taki rodzaj programowania. Nazywa się Netbeans i działa w Javie. Jednak w najnowszej wersji nie jest zaimplementowana obsługa języka C/C++, ale programiści tego produktu umożliwili pobranie dodatku z poprzedniej wersji – a dokładnie z 8.2

Aby dodać plugin obsługujący C/C++,  należy po pobraniu najnowszej wersji netbeans https://netbeans.apache.org/download/index.html przejść do Tools->Plugins. Następnie w zakładce Settings zaznaczyć miejsce wyszukiwania pluginów – Netbeans 8.2 Plugin Portal i nacisnąć ADD.

Po przejściu do zakładki Available Plugins, w dostępnej liście szukamy wtyczki w której nazwie jest C/C++, zaznaczamy ją i naciskamy install. Po przeprowadzonej instalacji, uruchommy dla pewności ponownie program.

Dzięki instalacji tej wtyczki, NetBeans umożliwia teraz pisanie programów w C/C++. Aby możliwe było wykorzystanie cross-compilation, należy jeszcze ustawić parę rzeczy. W pierwszej kolejności otwieramy ustawienia poprzez przejście do tools->options->C/C++

W zakładce BuildTools wybieramy Edit, a następnie ADD (w moim przypadku już znajduje się adres mojej malinki).

W nowym oknie konfiguracyjnym zdalny host, w polu hostname wpisujemy adres malinki, bądź wybieramy z listy. Wciskamy przycisk next

W następnym oknie wpisujemy identyfikator, czyli login do naszej malinki (domyślnie pi) i wybieramy rodzaj autoryzacji (albo poprzez hasło, albo poprzez klucz). Po wciśnięciu next zostaniemy poproszenie o podanie hasła – password. Warto też zaznaczyć aby program pamiętał nasze hasło (remember password).

Po potwierdzeniu hasła zamknie nam się okienko konfiguracji zdalnego dostępu. Oczom naszym pokaże się skonfigurowana zakłada C/C++.

Aby uzyskać połączenie z naszym hostem – malinką – wciskamy czerwony ekran opisany jako Connection status obok adresu rpi. Aby utworzyć nowy projekt który będzie zapisany na komputerze wybieramy File->New project. Natomiast jeżeli chcemy aby cały projekt był zapisywany na rpi na pasku narzędzi wybieramy Create remote c/c++ project znajdujący się obok adresu ip naszej malinki. Drugi sposób spowoduje zapisanie wszystkich plikó1) związanych z projektem na malince, dzięki czemu będziemy mieć możliwość otworzyć projekt na każdym komputerze który ma dostęp do malinki (oczywiście musi posiadać program netbeans, oraz mieć odpowiednie go skonfigurowany).

Z tego co wyczytałem w interneci, w jednej z nowszych wersji, ma już być dostępna obsług C/C++, więc czekamy z niecierpliwością.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *