abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 18:22 | Nová verze

Byla vydána nová verze 4.2.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 198 vývojářů. Provedeno bylo více než 2 200 commitů. Přehled úprav a nových vlastností v seznamu změn.

Ladislav Hagara | Komentářů: 0
včera 15:33 | Pozvánky

Konference Bratislava OpenCamp 2020 proběhne v sobotu 4. dubna 2020 v Bratislavě na Fakultě informatiky a informačních technologií STU. Organizátoři vyhlásili CFP. Návrhy přednášek a workshopů lze zaslat do 31. ledna 2020.

Ladislav Hagara | Komentářů: 0
včera 15:11 | Nová verze

Bylo oznámeno vydání KDE Frameworks 5.65.0, tj. nové verze aktuálně 74 knihoven rozšířujících multiplatformní framework Qt a dnes využívaných nejenom KDE Plasmou a KDE Aplikacemi. Nově začleněnou knihovnou je KQuickCharts pro generování grafů.

Ladislav Hagara | Komentářů: 0
13.12. 15:44 | Nová verze

Byla vydána verze 2.4 svobodného nelineárního video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Zdůraznit lze přechod na Python 3.

Ladislav Hagara | Komentářů: 0
13.12. 07:00 | Nová verze

Vyšel toolkit Qt verze 5.14. Změny se týkají především Qt Quick, jeho odstínění od konkrétních nízkoúrovňových grafických API a zlepšení výkonu zvláště ve 3D. Začíná tím proces postupných příprav na Qt 6. Příští vydání (5.15) bude s dlouhodobou podporou. Aktuálně také vyšlo vývojové prostředí Qt Creator 4.11 – vedle oprav chyb a řady zjednodušení konfigurace přidává mj. experimentální podporu WebAssembly.

Fluttershy, yay! | Komentářů: 6
13.12. 06:00 | Nová verze

Byla vydána nová verze 1.41 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.41 bylo vydáno také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

Ladislav Hagara | Komentářů: 0
12.12. 23:55 | IT novinky

J2EE, nověji Java EE a nejnověji Jakarta EE, tj. Java pro vývoj a provoz podnikových aplikací a informačních systémů (Java Platform, Enterprise Edition), slaví 20 let. První verze J2EE 1.2 byla vydána 12. prosince 1999.

Ladislav Hagara | Komentářů: 0
12.12. 22:00 | Nová verze

V kancelářích společnosti NGINX, tj. společnosti stojící za stejnojmenným webovým serverem a reverzní proxy, v Moskvě proběhla policejní razie. Na NGINX si nárokuje práva společnost Rambler. Igor Sysoev, zakladatel společnosti NGINX, ve společnosti Rambler pracoval v letech 2000 až 2011. V březnu letošního roku byla společnost NGINX prodána společnosti F5 Networks za 670 milionů dolarů.

Ladislav Hagara | Komentářů: 17
12.12. 18:44 | Nová verze

Vyšel Vim 8.2. Jedná se převážně o opravnou verzi tohoto textového editoru, ale mezi několika novými funkcemi je také možnost používat vyskakovací okna v uživatelském rozhraní, což využijí zvláště vývojáři doplňků pro dialogová okna či okna s nápovědou, napovídáním atp. Ukázkou je hra killersheep.

Fluttershy, yay! | Komentářů: 1
12.12. 17:44 | Nová verze

Byla vydána nová verze 19.12.0 KDE Aplikací (KDE Applications). Přehled novinek i s náhledy v oficiálním oznámení, kompletním seznamu změn a na stránce s dalšími informacemi.

Ladislav Hagara | Komentářů: 1
Kolik jste vystřídali distribucí Linuxu? (uvažujte distribuce, které jste používali aspoň měsíc)
 (3%)
 (75%)
 (17%)
 (3%)
 (3%)
Celkem 103 hlasů
 Komentářů: 14, poslední dnes 12:30
Rozcestník

www.AutoDoc.Cz

Kompilovanie jadra - II

7. 6. 2004 | Rastislav Stanik | Návody | 24939×

Způsoby konfigurace, kompilace a parametry, instalace. A několik šikovných tipů.

Konfigurácia jadra

Prv než spustíme samotnú kompiláciu, musíme povedať, čo bude v jadre a čo nie. Táto informácie je uložená v súbore /usr/src/linux/.config. Tento súbor buď musíme vytvoriť, alebo upraviť už existujúci. Ak potrebujete len mierne upraviť vlastnosti jadra z distribúcie, skúste zistiť, či distributér tento súbor niekde neponúka. Ak ste na zdrojový kód jadra aplikovali patch na vyššiu verziu, môžete spustiť príkaz (predpokladám, že sa nachádzate v adresári /usr/src/linux):

# make oldconfig

Tento príkaz zistí, aké nastavenia pribudli v novšej verzii a opýta sa vás len na tieto nastavenia. Ostatné zostanú nezmenené.

Ak potrebujeme urobiť kompletnú konfiguráciu alebo meniť pôvodné nastavenia, máme na výber niekoľkoých možností v závislosti od toho, aké prostredie máme k dispozíci:

  1. # make config
    
    make[1]: `scripts/fixdep' is up to date.
    scripts/kconfig/conf arch/i386/Kconfig
    #
    # using defaults found in .config
    #
    *
    * Linux Kernel Configuration
    *
    *
    * Code maturity level options
    *
    Prompt for development and/or incomplete 
                  code/drivers (EXPERIMENTAL) [Y/n/?]
    Select only drivers expected to compile 
                      cleanly (CLEAN_COMPILE) [Y/n/?]
      ...
    

    Tento spôsob patrí medzi historické. Stačí nám ľubovoľný textový terminál. Konfigurácia spočíva v tom, že dostávate rad otázok. Za každou otázkou sú v hranatých zátvorkách uvedené možnosti:

    • Yes - toto nastavenie bude použité
    • no - toto nastavenie nebude použité
    • module - daná voľba bude zkompilovaná ako modul
    • ? - vypíše nápovedu - stručný popis významu daného nastavenia

    Voľba, ktorá bola nastavená v pôvodnom .config je uvedena veľkým písmenom a bude tiež použitá, keď otázku jednoducho odklepnete klávesou Enter.

  2. # make menuconfig

    menuconfig screenshot

    Tento spôsob môžeme použiť, ak má náš systém nainštalovanú knižnicu ncurses. Tak ako v predchádzajúcom prípade môžete zvoliť medzi Y/n/m/?

  3. # make xconfig

    Pri jadrách 2.2 a 2.4 budete potrebovať mať nainštalovaný jazyk Tcl/Tk:

    xconfig ver 2.4

    Pri jadrách 2.6 budete potrebovať knižnicu Qt:

    xconfig ver 2.6

  4. # make gconfig

    Dostupné len pri jadrách 2.6:

    gconfig ver 2.6

  5. V prípade, že máte nainštalované prostredie KDE, môžete použiť Control Center:

    kde control center ver 2.4

    KDE vo verzii 3.2.2 vie konfigurovať len jadrá do verzie 2.4, ale dá sa predpokladať, že podpora pre 2.6 čoskoro pribudne.

Nech už zvolíte ľubovoľný spôsob, je isté, že nato, abyste správne nastavili konfiguráciu budúceho jadra, je vhodné mať dosť rozsiahle znalosti ako o hardwéri, ktorý máte v počítači, tak aj o rôznych subsystémoch. V tom, či zvládnete tento krok spočíva 99 % úspechu. Ak ho nezvládnete, môžete skončiť s jadrom, ktoré nenabootuje alebo nebude podporovať hardware, ktorý máte, alebo nebude efektívne využívať možnosti tohoto hardwaru. Pri niektorých voľbách je tiež vhodné zvážiť, na aký účel budete potom celý systém používať.

Moduly áno či nie

Ako som už spomínal, pri niektorých nastaveniach v konfigurácii možno zvoliť kompilovanie vo forme modulov. To znamená, že príslušná funkcionalita nebude začlenená do výsledného súboru jadra, ale do iného súboru. Meno tohoto súboru sa zvyčajne (no nie vždy) možno dočítať v nápovede pre danú voľbu alebo v dokumentácii.

Rozhodnutie či kompilovať ako modul, či nie, je na vás. Treba ale pamätať na to, že niektoré distribúcie a niektoré podsystémy očakávajú niektoré ovládače vo forme modulov. Priveľa niektoré, takže konkrétne: je zvykom, že ovládače pre sieťové karty sa kompilujú ako moduly, pretože to uľahčuje konfigurovanie systému pre použitie viacerých sieťových kariet kariet naraz. Tiež to uľahčuje odovzdávanie parametrov do ovládača, akými môže byť IRQ, či DMA. Distribúcie ponúkajú štartovacie skripty, ktoré sa pokúšajú nahrať postupne všetky moduly až kým nenájdu ten správny pre vašu sieťovú kartu. Podobne napríklad podsystém pre podporu zvuku - ALSA - očakáva ovládače pre zvukovú kartu vo forme modulov.

Zodpovednosť za automatické nahrávanie modulov môžete prenechať podsystému jadra nazvanému KMOD - Automatic kernel module loading. Tento podsytém dokáže automaticky nahrať príslušný modul v čase, keď je podtrebný - napríklad ovládač pre súborový systém FAT sa nahrá v čase, keď sa vykoná mount na takýto súborový systém.

Spustenie kompilácie

Po nakonfigurovaní nám ostáva len spustiť samotné kompilovanie. Nástroje potrebné na skompilovanie sú popísané v súbore /usr/src/linux/Documentation/Changes spolu so spôsobom, ako zistiť verziu nástrojov, ktoré máte nainštalované:

o  Gnu C               2.95.3     # gcc --version
o  Gnu make            3.79.1     # make --version
o  binutils            2.12       # ld -v
o  module-init-tools   0.9.10     # depmod -V
...

a tiež informáciu, kde získať aktuálne verzie týchto nástrojov:

o <ftp://ftp.gnu.org/gnu/gcc/>
o <ftp://ftp.gnu.org/gnu/make/>
o <ftp://ftp.kernel.org/pub/linux/devel/binutils/>
...

Ak na vašom systéme potrebné nástroje nemáte, môže to byť kvôli tomu, že len nie sú súčasťou typickej inštalácie vašej distribúcie - takže sa najprv pozrite, či sa nedajú doinštalovať.

Ak váš systém má potrebné nástroje, môžeme sa pustiť do kompilácie. Opať je rozdiel medzi verziami 2.6 a nižšími. Ak máte konfiguráciu urobenú správne a chcete skompilované jadro hneď aj nainštalovať, môžete to urobiť takto:

Verzie 2.4 a nižšie
# make dep clean bzlilo modules modules_install
Verzia 2.6
# make bzlilo modules_install

To, čo nasleduje za príkazom make, je takzvaný cieľ. Existuje mnoho cieľov, ktoré možete použiť. Tu je ich stručný popis:

dep
Kontrola závislostí medzi rôznymi nastaveniami. Tento cieľ je potrebný pre jadrá do verzie 2.4
clean
Vymazanie dočasných súborov v adresároch pod /usr/src/linux. Táto voľba je nutná pri jadrách do verzie 2.4.
bzImage
Skompilovanie obrazu jadra (Image), ktoré je skomprimované zipovacím algoritmom (zip) a je pravdepodobne väčšie ako je rozmer diskety (big). Výsledné jadro vznikne v adresári /usr/src/linux/arch/i386/boot (za predpokladu, že kompilujete na IBM kompatibilnom PC-čku). Pri tomto cieli sa nekompilujú moduly.
modules
Skompilovanie modulov.
modules_install
Nainštalovanie modulov do /lib/modules/{verzia jadra/
bzlilo

To isté ako bzImage ale výsledné jadro je automaticky nainštalované pomocou lilo. Predpokladom je, že lilo je správne nainštalované a očakáva súbor s jadrom na tom istom mieste, ako ho špecifikuje súbor /usr/src/linux/Makefile na riadku

export INSTALL_PATH=/boot

Inými slovami, ak lilo očakáva súbor vmlinuz inde ako v /boot, musíte tento riadok upraviť.

mrproper
Podobne ako clean, ale zmazaný bude aj súbor .config.

Čo sa ešte oplatí vedieť?

  • V adresári so zdrojovým kódom jadra nájdete adresár Documentation. V tomto adresári nájdete súbory popisujúce všeobecné princípy fungovania jadra, spôsoby konfigurovania rôznych ovládačov, ale aj informácie o tom, ako začať, ak chcete pridávať do jadra vlastnú funkcionalitu. Do verzie 2.4 sa tu nachádzal aj súbor Configure.help obsahujúci popis jednotlivých volieb zobrazovaný pri konfigurovaní jadra. V jadre 2.6 bol obsah tohoto súboru porozdeľovaný do súborov Kconfig v adresároch obsahujúcich kód zodpovedajúcich ovládačov.
  • Verziu jadra, ktoré práve beží, získate pomocou programu uname -r
    # uname -r
    2.6.6
  • Skompilované jadro v sebe nesie informáciu o tom, kde má hľadať hlavný súborový systém. Túto informáciu možno zistiť a aj zmeniť pomocou programu rdev:
    # rdev /boot/vmlinuz
    Root device /dev/hda2
    # rdev /boot/vmlinuz /dev/hda3
    # rdev /boot/vmlinuz
    Root device /dev/hda3

    V prípade, že informácia v jadre nezodpovedá tomu, kde v skutočnosti máte hlavný súborový systém, jadro pri štarte systému spravidla havaruje s hláškou podobnou tejto:

    Kernel panic: VFS: Unable to mount root fs on XX:YY

    Kde čísla XX a YY označujú minor a major číslo zariadenia, na ktorom jadro očakáva hlavný súborový systém.

       

Hodnocení: 40 %

        špatnédobré        

Nástroje: Tisk bez diskuse

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

Josef Kufner avatar 7.6.2004 09:18 Josef Kufner | skóre: 69
Rozbalit Rozbalit vše root
Pekny clanek. Co se tyce veci okolo rdev na konci clanku, neni to ekvivalentem k parametru root=... ?
Hello world ! Segmentation fault (core dumped)
7.6.2004 09:19 Miroslav Kriho | skóre: 12
Rozbalit Rozbalit vše malý dotaz
Hezký článek,ale ještě jedna otázka,jak nainstalovat automaticky jádro ne do lila,ale do grubu. Dělám to všechno otrocky ručně i když zas tak moc mi to nevadí.
7.6.2004 13:46 wocis
Rozbalit Rozbalit vše Re: malý dotaz
standartne delam make oldconfig, pak make menuconfig a vyhazim/pridam dalsi veci, pak make, dale make modules_install a nakonec make install. to posledni mi automaticky upravi grub a nakopiruje potrebne veci do /boot.
7.6.2004 14:54 Martin Kratochvil | skóre: 3
Rozbalit Rozbalit vše Re: malý dotaz
Ja to delam v debianu pres

make-kpkg --revision X kernel_image
-> vytvori mi to balik a pak jen ( ten balik je lepsi dat do nejakyho sourcu, takze ho pak mam dostupny na vsech strojich ;)
dpkg -i kernel-image-2.6.Y-X


A mam to ;)
7.6.2004 18:01 espinosa@centrum.cz
Rozbalit Rozbalit vše Re: malý dotaz
make install

je to proste :)) ..nainstaluje jak do Lilo (netestoval jsem) tak do Grubu.
7.6.2004 10:32 Borg | skóre: 6
Rozbalit Rozbalit vše Hardware
Ono není až tak problém provest kompilaci, podle mne je nejdůležitější vědět jaký HARDWARE v dotyčném kompu je obsažen Pokud máte nový PC s dokumentací tak je to NO PROBLEM. U starších musite komp většinou rozhodit a zjistit si podrobně co tam je obsaženo. Osobně je pro mne obsah PC nejdůležitější, vím co zapnout a co vypnout, nebo popřípadě zapnout jako modul. V linuxu používám jen to co tam mám, ať už natvrdo nebo modulem. Toť je výhoda kompilace, kdy si zapnu přesně typ procesoru, velikost pamětí popřípadě vypnu nadbytečné moduly zvukovek nebo SCSI řadičů, nastavím lepší podporu pro Raid atd. A abych to nastavil co nejlépe musím znát hardware.

To v čem provedu kompilaci, menuconfig nebo xconfig , je na každém uživateli. Osobně preferuji menuconfig.
7.6.2004 14:07 rastos | skóre: 61 | blog: rastos
Rozbalit Rozbalit vše Re: Hardware
Velmi spravna poznamka. Pokial je system funkcny, tak sa oplati pozistovat co sa da so starym jadrom. Napr. PCI karty - lspci, USB zariadenia - lsusb, graficka karta - /var/log/X*.log, sietova/zvukova karta - cat /etc/interrupts, ...

Netreba sa hanbit a ked je na pocitaci Windows, tiez sa tam da kadeco zistit o typoch zvukovych/grafickych/sietovych kariet atd atd.

7.6.2004 14:41 Petr
Rozbalit Rozbalit vše Re: Hardware
Ahoj

"cat /etc/interrupts, ..."

Spravne ma byt /proc/interrupts ;). V adresari /proc jsou veskere informace o systemu - tak jak to vidi jadro. Z neho berou info nastroje lspci, lsusb atd. Co se tyce kompilace - jedna vec je seznam HW , druha stranka je vedet "CO" povolit a co ne. Hodne veci v jadre spolu urcitym zpusobem souvisi. Takze pred kompilaci doporucuji mit seznam hw a hlavne vedet jak a co spolu souvisi /RTFM !/. Po kompilaci v kazdem pripade zachovat puvodni /predchozi/ funkcni jadro jako variantu pro boot. I velmi zkuseni uzivatele se obcas vraci k predchozimu jadru - zvlaste pri testovani novych vlastnosti. Lilo.conf pak muze vypadat nejak takhle
petr@petrs:~$ cat /etc/lilo.conf
# Start LILO global section
boot = /dev/hdi
#compact        # faster, but won't work on all systems.
delay = 50
# End LILO global section
# Linux bootable partition config begins
#
image = /boot/vmlinuz
  root = /dev/hdi3
  label = 2.6.7-rc1
  append = "video=aty128fb:1024x768-24@75"
  read-only
#
image = /boot/vmlinuz-2.6.6-rc1
  root = /dev/hdi3
  label = 2.6.6-rc1
  append = "video=aty128fb:1024x768-24@75"
  read-only
  read-only for checking
#
other = /dev/hdk2
image=/mnt2/boot/vmlinuz-2.4.21-9.EL
  label=linux-rhel
  initrd=/mnt2/boot/initrd-2.4.21-9.EL.img
  read-only
  append="hdb=ide-scsi root=LABEL=/"
# Linux bootable partition config ends
#DOS bootable partition config begins
other = /dev/hdi1
   label = win
   table = /dev/hdi
# DOS bootable partition config ends
other = /dev/hdk1
 label = win_server
 table = /dev/hdk

Petr
7.6.2004 16:36 Borg | skóre: 6
Rozbalit Rozbalit vše Re: Hardware
Ono to není až tak jednoduché, a distribuce se od distribuce trochu mění možnost v kompilaci z důvodů např. patchů.

A jak se říká vše souvisí se vším. A pokud v MDK najdete v /etc/interrupts dejte mi vědět. :-)

Když jsem začínal byl to poku omyl u toho co jsem zcela neznal. ;-)

Osobně jsem se to naučil tak že při nastavování v menuconfig postupuji od shora dolů a pravidelně si ukládám *.config od např. pokus01.config až pokusXX.config . Dříve vícekrát, nyní tak 5-6x.

Po kompilaci si spustím nové jádro a vypíšu kde to začalo haprovat, nechám si naběhnout funkční jádro skočím do menuconfig, natáhnu si uložené jadro pokusXX.config ,(samozřejmě to které si myslím že je ještě bezproblémové) a upravím volby které mne zlobí.

A k tomu hardware, proč bych např. na serveru měl mít zapnutou zvukovku, ISDN modem nebo PCMCIA kartu když tam nic takového nemám.
8.6.2004 09:49 rastos | skóre: 61 | blog: rastos
Rozbalit Rozbalit vše Re: Hardware
/etc/interrupts je samozrejme moj preklep. Ma to byt /proc/interrupts
7.6.2004 10:54 hubitch | skóre: 1
Rozbalit Rozbalit vše Překlad modulu
Pěkné shrnutí.Ale existuje i nějaký způsob, jak si třeba v jádře z distribuce zvolit další modul a nechat přeložit jen ten? (nečekat, až se zkompilují všechny)
7.6.2004 16:54 Michal
Rozbalit Rozbalit vše Re: Překlad modulu
to by me taky zajimalo. jak je to, kdyz nejaky modul/ovladac ve zdrojacich jadra neni obsazen a a ja si budu pridavat dodatecne. je v tom nejaky rozdil mezi jadry rady 2.4.x a 2.6.x ? diky
8.6.2004 09:48 rastos | skóre: 61 | blog: rastos
Rozbalit Rozbalit vše Re: Překlad modulu
Po prve: existuje volba CONFIG_MODVERSIONS ktora ak je nastavena na Y by mala umoznovat pouzivanie modulov zbuildovanych pre inu verziu jadra, pripadne tu istu verziu jadra s zbuildovanu s inymi nastaveniami. Moze a nemusi to fungovat - v zavislosti od toho do akej miery sa tie jadra lisia. Tento pristup pouziva napr. NVidia pre svoje drivery.

Po druhe: jadro 2.6 okrem inych vylepseni preslo reviziou make-systemu a malo by lepsie fungovat prebuildovanie len zmenenej/pridanej casti jadra. Treba si uvedomit, ze mnozstvo nastaveni je velke a spravne zachytit vsetky zavislosti nemusi byt jednoduche. Takze ak sa ponahlate, skuste vynechat 'clean' a asi to zafunguje.

8.6.2004 07:44 Kosac
Rozbalit Rozbalit vše Re: Překlad modulu
Staci udelat make menuconfig, vybrat si modul a pak make modules modules_install ne? Aspon pokazde se mi to povedlo (asi 3x)
7.6.2004 12:37 Maude Lebowski
Rozbalit Rozbalit vše automaticka konfigurace
Mozna se hodi zminit, ze nova jadra 2.6 umoznuji urcity typ prednastaveni, kdy se prispusteni make menuconfig "automaticky" nastavi vhodne volby jadra (na zaklade konfigurace predchoziho jadra a snad i detekce hw) takze pak staci jen menit co je treba.
7.6.2004 12:45 Zdenek Kaminski
Rozbalit Rozbalit vše Dokolecka dokola
Hmm, nevim, proc autor u jadra 2.4 pise neco o "make dep clean ..." kdyz README ve zdrojacich o volbe clean nerika vubec nic.

Zato se v tech README (jak k 2.2, tak 2.4, tak i k 2.6) jasne rika neco o volbe make mrproper, ktera by se mela provest VZDY nez zacnu kompilovat jadro, pokud ovsem vim, co delam.

A protoze tohle je pravdepodobne clanek pro zacatecniky, tak by se o make clean nemelo vubec mluvit a melo by se mluvit naopak o make mrproper. Proc to autor neudelal? Asi si puvodni dokumentaci ke kompilovani jadra necetl....

Chapu, ze kdyz nekdo pise clanek podle jinych clanku (a nikoliv podle navodu u zdroje, ktery si ma autor vzdy precist), tak se proste 100x opakovana blbost stane pravdivym mytem... Dokolecka dokola... At zije make clean...

Sutr.
7.6.2004 13:25 Borg | skóre: 6
Rozbalit Rozbalit vše Re: Dokolecka dokola
Vy jste někdy kompiloval jádro? A fungovalo vám?

To co píšete je blud, nebo většina autorů (zahraničních) nevědí co píší a radí.

Teď mám na kolenou otevřenu knihu od "Craiga Hunta" -"Linux - síťové servery"- Překlad a instalace jádra :

Spustíme "make dep, make clean" pro sestavení závislostí a vyčištění předchozí kompilace.

Co dodat?????

Já ty jádra kompiluju od Red Hat 7.0 a dep, i clean používám. Asi mám rád bludy.

Dotaz bude už konečně zapnuto pro tento článek možnost jít rovnou na komentáře??
7.6.2004 16:20 mimi.vx | skóre: 37 | blog: Mimi.VX | Praha
Rozbalit Rozbalit vše Re: Dokolecka dokola
hmmm clean je funcni u 2.4 ... u 2.6 rady jen castecne asi proto z mr proper cisti do cista a make dep se take uz nepouziva
USE="-gnome -kde";turris
7.6.2004 19:36 Zdenek Kaminski
Rozbalit Rozbalit vše Re: Dokolecka dokola
Verte, ze jsem jadro kompiloval opravdu hodnekrat... A poslednich par let ten preklad funguje vzdy napoprve...

Navic se mi zda, ze patrite zrovna mezi ty, kteri si soubor README v koreni zdrojovych souboru jadra _poradne_ a _cely_ jiz dlouho neprecetl.

Ukazte mi v dokumentaci ve zdrojacich jadra (ne Makefile ovsem), kde se pise neco o poradi:

... make dep clean ...

a pak se muzeme bavit o tom, kdo tu pise bludy...

Jak rikam, necht se ten, kdo o pise o nejakem software a vecem kolem nej, at se odkazuje nejprve na dokumentaci k danemu produktu...

tam se pise:

1) make mrproper

2) make [oldconfig config menuconfig ... ]

3) make dep

4) make bzImage (ci neco jineho...)

5) make modules (pripadne)

6) a pripadne dalsi moznosti...

o make clean ani stopa....

Vy jste si snad cetl Makefile a dival se, co ta volba znamena? A schvalne se podivejte do README 2.2....
8.6.2004 09:56 rastos | skóre: 61 | blog: rastos
Rozbalit Rozbalit vše Re: Dokolecka dokola
Ukazte mi v dokumentaci ve zdrojacich jadra (ne Makefile ovsem), kde se pise neco o poradi:

Napr. /usr/src/linux-2.4.24/Documentation/modules.txt - riadok 27.

Ale je zbytocne sa o tom hadat. Clanok bol mysleny ako startovaci bod pre zaciatocnikov a tym 'clean' neuskodi. Stavali sa chyby, ze nejake zavislosti neboli spravne zachytene makefile-och a bez 'clean' sa neprekompilovali veci, ktore sa mali. Ak si verite a viete identifikovat/vyriesit tento problem ak nastane, tak kludne clean vynechajte.

9.6.2004 15:12 Pavel Janousek
Rozbalit Rozbalit vše Re: Dokolecka dokola
Chtel bych videt, ktere distribucni jadro od RedHatu takto napoprve zkompilujete...:-r
7.6.2004 13:53 Rene Seifert
Rozbalit Rozbalit vše Re: Dokolecka dokola
Proc bych mel pouzivat vzdy mrpropera ???!!! Nejsme v TV reklame... :-) Autor jasne pise, ze dochazi k smazani souboru .config. To si budete vzdy zadavat vsechny sve volby pro kompilaci jadra znova ? I kdyz chcete pridat jen jednu volbu ? Maly priklad. Na svem starsim PC jsem zkompiloval jadro, ale jelikoz ma starsi BIOS, powerdown neprobehl nikdy spravne. V jadre je volba, ktera pamatuje i na tyto starsi BIOSy a umoznuje vypnuti PC volbou Vypnout... Prekompiloval jsem jadro, ale zapomel na tuto jedinou volbu. Pokud bych znovu pouzil vami doporuceneho propera, tak budu cele jadro konfigurovat znovu. Pokud ne, dodatecne odpovim pouze na tuto jednu otazku a prekompiluji znova. Jeste, ze jsem ve svych "kompilacnich" zacatcich bral rady jinde nez od vas.... ;-\ Usetrilo mi to cas.
7.6.2004 19:27 Zdenek Kaminski
Rozbalit Rozbalit vše Re: Dokolecka dokola
Jak jsem psal ve svem prispevku, "... pokud ovsem vite, co delate" A to je napr. tento pripad...
7.6.2004 19:48 Borg | skóre: 6
Rozbalit Rozbalit vše Re: Dokolecka dokola
Asi nečtete , nebo nechcete rozumět. Pokud budu mít uložené "zálohy" jádra, jako je třeba "pokusXX.config". Tak ty mně příkaz "mrproper" , smaže a nemůžu si načíst uloženou zálohu. A tudíž začínám načisto znovu. Asi máte hodně času a nevíte co sním. ;-)

A jinak díky těm zálohám si mohu nakompilovat jádro na několik variant aniž bych začínal od začátku. To snad pochopí každý. :-(

Ale ano je tam fukce "mrproper", tak ji klidně použijte. Je to váš čas, počítač a i nervy. ;-)
7.6.2004 21:41 reboot | skóre: 4
Rozbalit Rozbalit vše Re: Dokolecka dokola
No a kedze si niekto spravi zalohu "pokusXX.config" tak sa urcite nemusi bat ze mu ho mproper zmaze :) lebo make mrproper tiez cita co ma zmazat v Makefile alebo niekdo inde :):):):) ale urcite si tam kompilacia nezapisuje :):):) nic (a urcite nie ako som si nazval config pri ukladani :)) :):):) preco by tam bola asi v menuconfig(xconfig ...) moznost ako ulozit config :):) a ked uz sa bojim tak si to asi ulozim do ineho adresara (to je kde mrproper nevidi :):):):) ale to ja len tak :)
7.6.2004 22:39 Borg | skóre: 6
Rozbalit Rozbalit vše Re: Dokolecka dokola
Internet je výborná věc doufám že tedy umíte alespoň english, jinak si vemte slovník.

Files removed with 'make mrproper'. Directories removed with 'make mrproper', mrproper - delete configuration + modules + core files

Jednoduše řečeno článek je to dost dobrý k tomu aby si i začátečník, zkusil kompiklaci jádra.

A ještě štestí že článek nepsal m0d0r. A jen tak mimochodem m0d0r-e , v tom makefile volba make clean je, jako stejně tak make mrproper. A co která dělá si najděte na netu.
9.6.2004 15:15 Pavel Janousek
Rozbalit Rozbalit vše Re: Dokolecka dokola
Zvlastni, ze to co popisuje kolega pred Vami pouzivam nekolik let a na ztratu casu si rozhodne nemohu stezovat, ono je dobre obcas i myslet hlavou, kam si ten config ukladate - ono totiz kupodivu staci zkopirovat .config a pak ho nacist jako alternativni konfiguraci... jenze to byste si musel o kompilaci jadra skutecne neco precist a nebo byt profesional, kteryzto nejste a nejak Vam Vase vymysly nezeru....
7.6.2004 23:16 Drak
Rozbalit Rozbalit vše Re: Dokolecka dokola
No, nevim, par jader jsem uz zkompiloval, ale v takovem pripade snad ani neni potreba delat ani clean, ani mistra leskla podlaha, pak je te kompilace hotova dabelsky rychle, nebot se prekladaji jen zmeny. Zatim fungovalo vzdy a spolehlive. Proc zbytecne cekat? ;-)
9.6.2004 12:53 razor
Rozbalit Rozbalit vše Re: Dokolecka dokola
Mno me se uz nekolikrat stalo, ze v pripade nepouziti mrpropera, bylo vysledne jadro nefunkcni (neslo nabootovat). Uplne stejne konfigurovane a s pouzitim mrproper bylo v pohode ....
9.6.2004 16:11 Pavel Janousek
Rozbalit Rozbalit vše Re: Dokolecka dokola
To je naprosto v poradku a zadouci a to teprve predrecnici, kteri tak argumentuji, ze ten clean ci mrproper nepotrebuji vubec netusi o uskalich SMP a non-SMP kompilacich...:-) Nechme je zit v blazene nevedomosti, oni treba dorostou...
10.6.2004 23:21 Drak
Rozbalit Rozbalit vše Re: Dokolecka dokola
Ja samozrejme nerikal, ze je clean, nebo proper na nic. Jen, ze neni potreba ho delat uplne vzdy. Pokud to pak nefunguje, tak je pak clean logicky na poradu dne... Pravda, na smp jsem v zivote jadro neprekladal, takze o takovych uskalich nemam nejmensi tuseni.
3.2.2005 10:47 lump
Rozbalit Rozbalit vše Re: Dokolecka dokola
este ze si ludia precitaju najskor ten clanok a az potom Tvoje prispevky:-)
7.6.2004 19:23 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše make O=
Ve 2.6 je pekna volba
cd /usr/src/linux
make O=/home/uzivatel/... menuconfig
make O=/home/uzivatel/... bzImage modules
su
make O=/home/uzivatel/... modules_install install
Vyhoda je ze kompilovat muze normalni uzivatel a pritom zdrojaky jsou v /usr/src/linux.
7.6.2004 21:42 reboot | skóre: 4
Rozbalit Rozbalit vše Re: make O=
a v cat /proc/version aspon vidno tvojho usera a nie root-a :)
9.6.2004 09:31 b0rmann | skóre: 15 | Pardubice
Rozbalit Rozbalit vše bzImage
> Skompilovanie obrazu jadra (Image), ktoré je skomprimované
> zipovacím algoritmom (zip) a je pravdepodobne väčšie ako je
> rozmer diskety (big).

Co to jsou za nesmysly? Co je to za novy zipovaci algoritmus? Proc 'pravdepodobne'? Nevis co je bzip2 a co je rle?
--- Gott strafe Amerika
Jiří Svoboda avatar 9.6.2004 13:18 Jiří Svoboda | skóre: 37 | blog: cat /dev/mind | Prostějov
Rozbalit Rozbalit vše Re: bzImage
Jednou provzdy, bzImage _NEMA_NIC_ spolecneho s bzip2!
11.6.2004 20:09 Gonzo
Rozbalit Rozbalit vše o clanku..
Tak nejprve sem chtel autora clanku poradne sprdnout, protoze se mi kompilace porad nedarila. Pak jsem procetl par README souboru, poradne prosel vsechny helpy v 'make menuconfig', zavolal znamemu (odbornikovi) a kompilace se zdarila. Takze autorovi dekuju. Jeho clanek me donutil se o kompilaci aspon trochu zajimat.
3.2.2005 10:55 lump
Rozbalit Rozbalit vše Re: o clanku..
myslim si, ze podla tohto clanku by to malo ist..
29.3.2005 20:58 misapu@napismi.cz
Rozbalit Rozbalit vše Qt?
make xconfig mi hlásí, že nemám nainstalovanou knihovnu Qt. Kde ji najdu? Prošel jsem balíčky na instalačním DVD a potom contrib, a nikde jsem nic takového nenašel.
30.3.2005 07:46 rastos | skóre: 61 | blog: rastos
Rozbalit Rozbalit vše Re: Qt?
Qt kniznica je produkt firmy TrollTech a je zakladom pre prostredie KDE - preto ju obsahuje takmer kazda distribucia. Ak mas nejaku distribuciu, ktora neponuka KDE resp. Qt. tak asi budes musiet pouzit iny target pre make a nie xconfig. Ak ju mas tak skus pozriet ci mas nastavenu premennu prostredia QTDIR. U mna ma hodnotu /usr/lib/qt.

P.S. odpovedas do diskusie starej dobrych par mesiacov. A malokto si to vsimne. Lepsie je polozit otazku do diskusii a dat tam linku na clanok nech vieme o com je rec.

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.