oswajanie/cywilizowanie uClibc

Michal Moskal malekith w pld.org.pl
Pią, 4 Sty 2002, 17:57:35 CET


On Thu, Jan 03, 2002 at 10:05:59PM +0100, Tomasz Kłoczko wrote:
> 
> Za chwilę wrzucę do repo zmiany do uClibc. Zamiany te oprócz aktualizacji
> do 0.9.8 zawierać będą niemal kompletne przebudowanie całego shematu
> pakietu pod względem jego konstrukcji jak i sposobu posługiwania się
> zasobami co zdaje sobie w pełni sprawę z tego że rozwali prześciowo
> procedury kompletowania zasobów do instalatora ale zmiany te są
> jednoczęsnei na tyle istotne że nie pownniśmy zwlekać z ich wdrożeniem. Po
> mimo że rozwalą one trochę obecną procedurę budowania tych zasobów to
> zmiany są tu bezwzględnie potrzebne gdyż umożliwią swobodne mieszanie w
> systemie binarek linkowanych z uClibc jak i glibc. 

Dynamicznie? I don't think so (LD_LIBRARY_PATH, -rpath może). A
statycznie mogłeś sobie mieszać do woli.

> I to jest głółny powód
> tak radykalnej zmiany po mimo tego że jesteśmy w trakcie stabilizacji tego
> co mamy. Zmiany jakie bendą wymagane dla reszty pakietów które generują
> pakiety BOOT polegać będą z grubsza na radykalnym uproszczeniu całości
> obecnych procedur dla podpakietów BOOT. Po tym co zaraz wrzucę żeby
> wygenrować binarkę linkowaną z uClibc wytarczy że tylko ustawi się CC na
> %{_arch}-uclibc-gcc i .. nic więcej :)

Glad to hear that. Dwie linijki w każdym specu BOOT mniej ;)

> Mówiąc inaczej powinno to otworzyć drogę do tego żeby być może o ile się
> nie mylę zacząć uClibc wykorzytywać daleko szerzej niż tylko w
> instalatorze czyli mówiąc jeszcze inaczej żeby uClibc stało się być może
> pełnoprawnym i mocno użytecznym elementem dystrybucji.

Right.

> Tak czy inaczeje obecnie zmiany do BOOT po wprowadzeniu nowej konstrukcji
> uClibc powinny być dość proste i na tyle przyjemne, że dodatkowo bendą
> znacznie upraszczać budowanie zasobów BOOT.
> 
> Efektem ubocznym będzie to że w BOOT bendą mogły się pojawić programy
> linkowane dynamicznie z uClic co powinno pozwolić na znaczne zmniejszenie
> rozmiarów tego co tam się obecnie znajduje dając miejce na więcej modułów
> kernela, wiecej wszelkiego innego kodu jaki będzie nam potrzebny w
> instalatorze. Według dokumentacji shared uClibc na pewno działa poprawnie
> na x86 ale nie koniecznie jeszcze poprawnie na pozostałych arch ale w tej
> chwili nie jest to aż takie ważne.

Z tym linkowaniem dynamicznym to ja bym się tak nie śpieszył. Na
znaczyny brak miejsca na bootkietkach nie narzekamy, a linkowanie
dynamiczne nie da znowu aż tyle. Na bootdisku są trzy binarki na krzyż,
a funkcje z uClibc są małe.

Czyli wskazane jest *nie psucie* BOOT, żeby było dynamiczne.

> I jeszcze jedna propozycja co do pakietów BOOT. Proponowałbym żeby binarki
> dla BOOT lądowały w %{_prefix}/%{_arch}-uclibc/{,usr}/bin. Dlaczego tak ?
> to stanie się jasne zapewne dla każdego kto się przyjrzy bliżej temu jak
> uClibc będzie wyglądał po zmianach jakie wrzuce za chwilę.

Nope. To nie ma sensu. Chyba, że chcesz linkować te binarki
dynamicznie, co spowoduje trudności w uruchamianiu ich na normalnym
systemie (/usr/lib/i386-uclibc/whatever/bin/ls: No such file or
directory... wtf??? aaa znów trzeba LD_LIBRARY_PATH ustawić...)

W przeciwnym wypadku one nie mają *nic* wspólnego z
/usr/lib/i386-uclibc, natomiast *mają* z instalatorem. A stuff do
instalatora jest w /usr/lib/bootdisk.

> Kolejnym efektem ubocznym powinno być to że da się mocno uprościć
> portowanie instalatora na inne arch niż x86.

??? 

(btw: z tą alphą w specu to taki joke?)

> I jeszcze jedno. Zmiany jakie wrzyucę nie koniecznie muszą być w stu
> procentach poprawne już teraz ale chodzi o to że jestem pewien kierunku w
> jakim to się powinno zmienić więc nie koniecznie wszystko musi być
> poprawne w tym co wrzucę.

Poprawiłem trochę.

-- 
: Michal ``,/\/\,       '' Moskal    | |            : GCS {C,UL}++++$
:          |    |alekith      @    |)|(| . org . pl : {E--, W, w-,M}-
:    Linux: We are dot in .ORG.    |                : {b,e>+}++ !tv h
: CurProj: ftp://ftp.pld.org.pl/people/malekith/ksi : PLD Team member



Więcej informacji o liście dyskusyjnej pld-devel-pl