bbbbbbbb
AAA b::::::b EEEEEEEEEEEEEEEEEEEEEE
A:::A b::::::b E::::::::::::::::::::E
A:::::A b::::::b E::::::::::::::::::::E
A:::::::A b:::::b EE::::::EEEEEEEEE::::E
A:::::::::A mmmmmmm mmmmmmm b:::::bbbbbbbbb E:::::E EEEEEErrrrr rrrrrrrrr
A:::::A:::::A mm:::::::m m:::::::mm b::::::::::::::bb E:::::E r::::rrr:::::::::r
A:::::A A:::::A m::::::::::mm::::::::::mb::::::::::::::::b E::::::EEEEEEEEEE r:::::::::::::::::r
A:::::A A:::::A m::::::::::::::::::::::mb:::::bbbbb:::::::b E:::::::::::::::E rr::::::rrrrr::::::r
A:::::A A:::::A m:::::mmm::::::mmm:::::mb:::::b b::::::b E:::::::::::::::E r:::::r r:::::r
A:::::AAAAAAAAA:::::A m::::m m::::m m::::mb:::::b b:::::b E::::::EEEEEEEEEE r:::::r rrrrrrr
A:::::::::::::::::::::A m::::m m::::m m::::mb:::::b b:::::b E:::::E r:::::r
A:::::AAAAAAAAAAAAA:::::A m::::m m::::m m::::mb:::::b b:::::b E:::::E EEEEEE r:::::r
A:::::A A:::::A m::::m m::::m m::::mb:::::bbbbbb::::::bEE::::::EEEEEEEE:::::E r:::::r
A:::::A A:::::Am::::m m::::m m::::mb::::::::::::::::b E::::::::::::::::::::E r:::::r
A:::::A A:::::A::::m m::::m m::::mb:::::::::::::::b E::::::::::::::::::::E r:::::r
AAAAAAA AAAAAAAmmmm mmmmmm mmmmmmbbbbbbbbbbbbbbbb EEEEEEEEEEEEEEEEEEEEEE rrrrrrr
Projekt inżynierski Konrada Gądka i Michała Konarskiego. Składa się z
- mediatora (Erlang)
- sterowników urządzeń (C/C++)
- aplikacji klienckich (Erlang, Java)
Projekt jest w stadium rozwojowym. Wszystkie flagi debugowania są włączone.
Wow. Istnieją.
Potrzebne są:
- kompilator GCC. Clang być może sobie poradzi,
- Erlang w wersji R15B lub R16B.
Uwagi: Erlang z paczek Ubuntu nie zawiera np. programu to_erl
-- polecam zainstalować
paczki ze strony Erlang Solutions.
make all
# ściąga zależności, kompiluje projekt i sterownikimake test
# testy
make
# kompiluje zmiany wprowadzone do mediatora (amber
) i klienta (amber_client
)make drivers
# kompiluje wszystkie sterownikimake roboclaw_drivers
# kompiluje konkretny sterownik
W skrócie: serwer zwykle będzie działać wiecznie (w wypadku awarii sam się zrestartuje), klient jest /jednorazowy/.
- Uruchom skrypt
./start_amber
. Uruchomił się w tle. Logi uruchomieniowe są w katalogulog
. - By podłączyć się do konsoli erlanga, wywołaj polecenie
to_erl pipes/
(slash na końcu jest potrzebny). - By odłączyć się od konsoli: Ctrl-D.
- By zamknąć erlanga:
a. Podłącz się do konsoli i wywołaj polecenie
q().
(razem z kropką na końcu). b.killall heart
.
./start_client
Znajduje się w subrepozytorium. By je pobrać, należy wydać polecenia:
git submodule init
-- zainicjowanie konfiguracjigit submodule update
-- ściągnięcie podrepozytoriów'
Można też zwyczajnie sklonować repozytorium mjkpl/amber-java-clients.
Warto przeglądnąć artykuł A successful Git branching model.
Poniższy obrazek prezentuje koncept. Może wydawać się to skomplikowane, ale takim nie jest.
Opcja --no-ff
została domyślnie ustawiona na branche master
oraz develop
.