Zobrazujú sa príspevky s označením kompilovanie. Zobraziť všetky príspevky
Zobrazujú sa príspevky s označením kompilovanie. Zobraziť všetky príspevky

nedeľa, januára 28, 2007

Icecream compile cluster

Distribuovane kompilovanie fungovalo pomerne dobre, ale v niektorých prípadoch boli kompilácie prerušené chybou. Bez distcc sa všetko skompilovalo dobre, takže chyba bude asi v komunikácii medzi jednotlivými stanicami clusteru (možno sa nestihli poslať skompilované súbory na domovský počítač kým uplynul timeout, alebo kompiloval súbory v nesprávnom poradí). Podobným projektom ako je distcc, je aj Icecream, ktorý z distcc vychádza. Tak som ho pokusne nainštaloval, uvidíme ako sa bude správať.

Aby sa pri kompiláciách toho istého software na viacerých počítačoch príliš nezaťažovala linka do Internetu, nastavil som "Download Cache for LAN Http Replicator". Teraz sa budú všetky ebuildy z Internetu ťahať iba raz, na domáci server, ktorý bude robit proxy pre ostatné počítače.

pondelok, januára 08, 2007

Distcc - distribuovane kompilovanie

Dnes som na mojom Gentoo notebooku - gentoobooku - znovu skompiloval KDE (vybral som si možnosť neinštalovať kompletný balík KDE, ale tzv. split ebuilds, kde sa neinštaluje všetok KDE balast, ale len tie dôležité veci). Pri tejto príležitosti som konečne rozbehal distcc. Teraz sa pri kompilovaní rozhodia čiastkové kompilácie na viaceré počítače, čím by sa mal celkový čas výrazne skrátiť. Priebeh kompilácie sa dá sledovať pomocou príkazu distccmon-text - len som musel prihodiť do súboru /etc/env.d/02distcc riadok
DISTCC_DIR="/var/tmp/portage/.distcc"
Zdá sa mi, že potom treba esšte spustiť
env-update

štvrtok, augusta 17, 2006

Emerge world

Včera som KONEČNE po 5 dňoch dokončil aktualizáciu VŠETKÝCH softwarových balíčkov na domácom serveri (alebo aj domácom multimediálnom centre).

Gentoo Linux má so svojím portage systémom jednu veľkú nevýhodu oproti konkurencii - rýchlosť. Či skôr pomalosť, keďže všetko sa tu kompiluje zo zdrojového kódu. Našťastie si portage stráži závislosti balíčkov, takže jedným príkazom emerge sa automaticky stiahne a skompiluje kľudne aj 20 knižníc, pomocných programov a utilít, ktoré sú nutné pre beh inštalovaného programu. Na druhej strane má kompilácia výhodu - nastavíte si optimalizácie kompilátora ako potrebujete, čo v určitých prípadoch dáva znateľné zvýšenie výkonu.

Po spustení emerge --sync sa stiahne aktuálna verzia zoznamu balíčkov. Ešte treba spraviť emerge portage aby sa updatovali aj programy na správu a inštaláciu balíčkov.

Emerge -u world sa naštastie nemusí robiť často, vlastne sa nemusí robiť vôbec, pokiaľ nepotrebujete novšie verzie softwaru na produkčnom serveri. V mojom prípade som sa pre to rozhodol kôli novšej verzii kompilátoru gcc. Preto som nechal spraviť kompletnú rekompiláciu všetkých programov nainštalovaných v systéme, nielen tých, pre ktoré medzitým vyšli nové verzie. Syntax príkazu je v tom to prípade emerge -vDe world.

Samotný update by trval na mojom systéme (AMD Sempron 2800+) približne 1 deň, nanešťastie sa ukázalo, že niektoré balíčky (z asi 560 inštalovaných) sa pri určitých nastaveniach systému (a určitých verziách kernelu) nedajú skompilovať a tak bolo nutné konzultovať Gentoo Wiki a užívateľské diskusné fóra. Pre každého trpezlivého, angličtiny znalého užívateľa systému Gentoo je to pravá pokladnica vedomostí a najlepší prostriedok na riešenie problémov.

V niektorých prípadoch bolo možné pokračovať pomocou príkazu
emerge -vDe --resume world. Niekedy sa to však nepodarilo a keďže sa mi nechcelo písať všetky nutné emerge ručne, nechal som to prebehnúť znovu od začiatku.

Nakoniec je nutné pomocou príkazu etc-update updatovať konfigurácie skompilovaných programov. Tu treba dávať pozor, aby ste si svoje pracne vyladené nastavenie neprepísali štandardným všebecným konfigurákom, aj keď novšej verzie. Čiže odporúčam najprv zálohovať adresár /etc.

Keď si nájdem zasa čas, donastavím ešte pár ďaľších vecí v systéme, ako napríklad automatické sťahovanie TV programu pre slovenské a české TV stanice vo formáte XMLTV pre MythTV.
Zdielanie tlačiarne (multifunkčné zariadenie Canon MP450) cez Sambu mám už vyriešené, teraz sa pokúsim nastaviť zdielanie scannera v MP450.

Paulie