Portaal Portaal Pingviini veeb foorumi pealeht
  Viki  |  IRC  |  Otsing  |  Küsimused ja vastused  |  Profiil  |  Privaatsõnumite vaatamiseks logi sisse  | Logi sisse või Registreeru
<empty>
Vaata järgmist teemat
Vaata eelmist teemat

Postita uus teemaVasta teemale
Autor Sõnum
sips
Pingviini aktivist
Pingviini aktivist



Liitunud: 20.05.2006
Postitused: 288

Distributsioon: Arch
estonia.gif
postituspostitatud: 21.05.2009, 05:49  postituse pealkiri:  Eraldatud build env?  

Mõtlesin siin, et gun/linux'i jooksutamiseks pole ju tarvis nt gcc'd. Peaks nagu piisama mingist bootskriptist, Linuxist, nt bash'ist, realugejast jne.. Ühesõnaga minu arusaamist mööda ei ole nö frontend-gui-töölaud-süsteemile vaja nt "gnu kompilaatorite kogu" ja muud sellist.

Ehk, et asi normaalselt ära seletada; idee oli selline, et oleks kaks keskkonda: a-la / (root) ja /build (root/arendus). Uuesti , ehk nn / (root) kaustas oleks ainult ja ainult need "failid" mis on vajalikud OS'i jooksutamiseks ja teine nt nn /build kaustas istuks kogu kraam mis on vajalik esimese "/.." loomiseks/uuendamiseks jne.

Kogu asja idee oleks, et annaks gentoo baasil ehitada (esialgu/korda oma lõbuks) mingi gnu/linux distro, mis nt "oskaks internetis käia", aga ei jagaks/(ei omaks võimalust) midagi kompileerimisest ja muust sellisest.

Miks aluseks Gentoo? - Aaaa... Kas on veel midagi lihtsamat??? - Ega vist, seal ju enam-vähem kõik ja kõige uusem esindatud (vastavalt valikutele/vajadustele)!!!

Mis edasi?
Idee oles luua (esialgu) x86'l baseeruv binaarne gnu/linux distrpution koos täis qt, gtk, tcl jne toega (lisaks igasugu pluginad nt flash, java, ehk isegi estID), mis omaks Xserver'it ja mingit "suvalist" vabavaralist (pole otsustatud) GUI töölauda.
Just NIMELT selline "tavaline" distro (pigem võiks olla nn OS), mis ei oska ise midagi teha/luua (kompileerida - on kah asi millega välja karata) (samuti nagu ei saa hakkama defooldina meile teada olevat teist kaks tasulist/populaarsmat OS'i), Ehk siis tahaks ehitada vabavaralist only-boot2-gnu/linux-desktop "süsteemi".

Aga see selleks;
Ikkagi kas keegi on nii tark, ja seletab lahti kuidas luua üks keskond kausta "Y" ja selle abil luua teise kausta uus binaarne-build "X".?

_________________
PS! Vanaisale ei saa Linuxit peale lasta.

priit
Vana Pingviin
Vana Pingviin


Vanus: 35
Liitunud: 04.08.2005
Postitused: 521
Asukoht: Tartu
Distributsioon: CentOS / OS X
estonia.gif
postituspostitatud: 21.05.2009, 11:18  postituse pealkiri:  Re: Eraldatud build env?  

sips kirjutas:
Mõtlesin siin, et gun/linux'i jooksutamiseks pole ju tarvis nt gcc'd. Peaks nagu piisama mingist bootskriptist, Linuxist, nt bash'ist, realugejast jne.. Ühesõnaga minu arusaamist mööda ei ole nö frontend-gui-töölaud-süsteemile vaja nt "gnu kompilaatorite kogu" ja muud sellist.

Ehk, et asi normaalselt ära seletada; idee oli selline, et oleks kaks keskkonda: a-la / (root) ja /build (root/arendus). Uuesti , ehk nn / (root) kaustas oleks ainult ja ainult need "failid" mis on vajalikud OS'i jooksutamiseks ja teine nt nn /build kaustas istuks kogu kraam mis on vajalik esimese "/.." loomiseks/uuendamiseks jne.

Kogu asja idee oleks, et annaks gentoo baasil ehitada (esialgu/korda oma lõbuks) mingi gnu/linux distro, mis nt "oskaks internetis käia", aga ei jagaks/(ei omaks võimalust) midagi kompileerimisest ja muust sellisest.

Miks aluseks Gentoo? - Aaaa... Kas on veel midagi lihtsamat??? - Ega vist, seal ju enam-vähem kõik ja kõige uusem esindatud (vastavalt valikutele/vajadustele)!!!

Mis edasi?
Idee oles luua (esialgu) x86'l baseeruv binaarne gnu/linux distrpution koos täis qt, gtk, tcl jne toega (lisaks igasugu pluginad nt flash, java, ehk isegi estID), mis omaks Xserver'it ja mingit "suvalist" vabavaralist (pole otsustatud) GUI töölauda.
Just NIMELT selline "tavaline" distro (pigem võiks olla nn OS), mis ei oska ise midagi teha/luua (kompileerida - on kah asi millega välja karata) (samuti nagu ei saa hakkama defooldina meile teada olevat teist kaks tasulist/populaarsmat OS'i), Ehk siis tahaks ehitada vabavaralist only-boot2-gnu/linux-desktop "süsteemi".

Aga see selleks;
Ikkagi kas keegi on nii tark, ja seletab lahti kuidas luua üks keskond kausta "Y" ja selle abil luua teise kausta uus binaarne-build "X".?


Gentoo kasutajana oled kindlasti kuulnud asjast nimega chroot, millega peaks miskit sarnast saama teha.


illukas
Vana Pingviin
Vana Pingviin


Vanus: 38
Liitunud: 24.10.2006
Postitused: 2036


norway.gif
postituspostitatud: 22.05.2009, 00:39  postituse pealkiri:  (teema puudub)  

ainult chrooduga vist ei saa

kuid uuri sellist asja nagu LTSP Build Environment, selle mõte on väga sarnane sinu omale, ehk saad ideid sealt...


bobc
Pingviini aktivist
Pingviini aktivist


Vanus: 38
Liitunud: 09.07.2005
Postitused: 165
Asukoht: undef
Distributsioon: SouRCe64 GNU/Linux
estonia.gif
postituspostitatud: 22.05.2009, 15:12  postituse pealkiri:  (teema puudub)  

Otseselt GCC pole vaja (päiseid ja kompilaatoreid) aga osasi GCC librasid küll.
Sinu poolt väljakäidav idee 2 erinevast "keskonnast".
Sisuliselt binary based distrod nagu Ubuntu jne, klopsivad uue paki kokku aga kasutajale koostatakse pakk, mis sisaldab ainult binary faili ja sellejuurde kuuluvaid librasid (ei panda kaasa päiseid, need dev pakkides).

Sul on sisuliselt siis 2 süsteemi, esimene täiuslik koos kompilaatoritega jne. ja teine siis ainult nendest komponentidest, mis "jooksvad on".
Sul võib osutuda antud sortimine, mis vajalik ja mis mitte päris keeruliseks. Ja kettapidna sa ei võida ka.

Ise hoian kõike koos ja esmane build on kuskil 3-4Gb juures, sisaldades
base32,X,gtk1,gtk2,gnome(osaliselt). Strippides debug sümbolid välja võidad sa juba tublisti ruumi (muidugi kui debugimine on vajalik ei ole soovitatav strippida).

Ja tegelt sa ei vaja aluseks ei Gentoo gnu/linux distrot vaid, mis iganes gnu/linux distrot koos kompilleerimiskeskonnaga. Sobib näiteks SystemRescueCd (baseerub Gentoo gnu/linux distrole)

Sisuliselt näeb protsess välja lühidalt järgmine:
Tegevust inglise keeles kutsutakse "Toolchainimiseks" ei tea (ei taha pakkuda ka), mis see võiks eestikeeles olla.
1. Koostad siis minimaalse ehituskeskonna (sealt võimalik, et ka sõna Tool tuleb). Vajalik selles etappis on, et kõik rakendused lingitaks näiteks TOOL/lib asuva glibc librariga (näiteks asub sul uus /tool/lib/ld-linux.so.2), mitte aga elava süsteemi /lib/ld-linux.so.2. Selleks muudad sa binutils,gcc ainult.
2. Samm oleks siis siseneda chroot uue baasüsteemi ja sisuliset teha 1. sammule vastupidine samm binutils muutes, et nüüd lingitakse kõik /lib/ld-linux.so.2 ga.
3. Sisened uude süsteemi, eelnevalt eemaldanud esimeses sammus koostatud ehituskeskonna.
4. Koostad oma init.rc scriptid ja muud conf failid ning omadgi omakootud distrot põhimõtteliselt.

Googles otsides Toolchain siis peaksid leidma rohkem infot ja LFS distro peaks sisuliselt need sammud vägagi põhjalikult lahti kirjeldama.

_________________
Image

Näita (aja järgi):      
Postita uus teemaVasta teemale


Vaata järgmist teemat
Vaata eelmist teemat
Powered by phpBB2 Plus based on phpBB © 2001/7 phpBB Group