===== Systémy hromadné obsluhy - verze pro Linux ===== ==== Instalace a spuštění ==== * Stáhněte archiv se zdrojovými soubory výukového simulačního systému -> {{vyuka:cviceni:x36dsi:archiv:sho_linux.tgz|sho_linux.tgz}} . * Rozbalte jej do vhodného adresáře (budete potřebovat několik kB volného místa pro překlad). * Soubor rozbalte příkazy tar/gzip a změňte adresář na sho misko@localhost:~$ tar xzf sho_linux.tgz misko@localhost:~$ cd sho misko@localhost:~/sho$ * Projekt sestavte příkazem make. misko@localhost:~/sho$ make rm -f *.o rm -f *core* rm -f lyzari rm -f menza rm -f *~ g++ `pth-config --cflags` -c -o simset.o simset.cc g++ `pth-config --cflags` -o random.o -c random.cc g++ `pth-config --cflags` -c -o simulation.o simulation.cc g++ `pth-config --cflags` -c -o thread.o thread.cc g++ `pth-config --cflags` -c -o eventnotice.o eventnotice.cc g++ `pth-config --cflags` -c -o process.o process.cc g++ `pth-config --cflags` `pth-config --cflags` -c -o main.o main.cc g++ `pth-config --cflags` -c -o hlavni.o hlavni.cc g++ `pth-config --cflags` -c -o hlavni0.o hlavni0.cc g++ `pth-config --cflags` -L`pth-config --libdir` -o lyzari simset.o random.o simulation.o thread.o eventnotice.o process.o main.o hlavni.o `pth-config --libs` g++ `pth-config --cflags` -L`pth-config --libdir` -o menza simset.o random.o simulation.o thread.o eventnotice.o process.o main.o hlavni0.o `pth-config --libs` * Prozkoumejte zdrojový kód. Komentáře Vám napoví. * Spusťte simulaci: ./lyzari * Dále upravujte pouze zdrojový soubor hlavni0.cpp (v jiných zdrojích se jmenuje main0.cpp). ==== Poznámky k překladu ==== Budete potřebovat: - **GNU g++**, kompilátor ze sady gcc ([[http://gcc.gnu.org/|zde]]) - testováno s verzemi 2.95.3 (debian, freebsd), 2.96 (redhat) a 3.2.3 (debian). S menšími problémy běhá i na GNU/Hurd. - knihovnu **GNU pth** ([[http://www.gnu.org/software/pth/|zde]]) - pracuje s verzemi 1.3.0 a vyšší - **GNU make** ([[http://www.gnu.org/software/make/|zde]]) === Problémy při překladu: === * Chybí knihovna pth misko@localhost:~/sho$ make rm -f *.o rm -f *core* rm -f lyzari rm -f menza rm -f *~ g++ `pth-config --cflags` -c -o simset.o simset.cc /bin/sh: pth-config: command not found g++ `pth-config --cflags` -o random.o -c random.cc /bin/sh: pth-config: command not found g++ `pth-config --cflags` -c -o simulation.o simulation.cc /bin/sh: pth-config: command not found In file included from process.h:7, from simulation.h:10, from simulation.cc:5: thread.h:9: pth.h: No such file or directory make: *** [simulation] Error 1 Řešení: * Debian GNU/[Linux,Hurd]: apt-get install libpth-dev * Fedora: Nainstalujte balík pth-devel: yum install pth-devel ==== Poděkování ==== * Michal Medvecký, Rudolf Marek, Michal Perďoch: Úprava win verze pro OS Linux, květen 2003 * Jiří Buček: Vytvoření návodu, 2004 * Tomáš Dubec a Tomáš Hroch: Nalezení a odstranění chyby v thread.cc, duben 2008