jacekalex pisze:I chcesz mi wytlumaczyć, że ja w Gentoo mam portage, które automatycznie kompiluje zależności, a Developrzy Debiana opeikujący się Xorgiem nie potrafią naskrobać skryptu, który im zbuduje wsystkie moduly Xorga automatycznie?
Jeśli tak, to dlaczego nie dają w repo nawet źródel starszych Xorgów, zeby sie ktoś mogl zbudować je korzystając z dpkg, który przecież ma wszyskie narzędzia do automatycznej budowy paczek.
Jest też np apt-build, który też kompiluje wszystkie zależności od sufitu do podlogi.
A przecież, kiedyś wszystko co trzeba było w repo, źródla mogły zostać.
I tylko do sterownika np Nvidia 71.xx.xx dorzucić skrypt, ktory odpali dpkg tak, żeby zbudował starego Xorga i konieczne moduły.
Podobnie do skryptu build-qmail - ktory służy do instalacji Qmaila na Debianie, i ze względów licencyjnych kompiluje go na miejscu tworząc paczke deb.

Sznurek:
http://packages.debian.org/squeeze/all/ ... c/filelist
Odnośnie konkretnego przykładu z niepasującym xorgiem do sterowników. Piszesz o dpkg czy zależnościach... To są różnice bardziej na poziomie programistycznym, kodu źródłowego. Nvidia w swoich sterownikach daje już niektóre moduły skompilowane (pliki .so), wiadomo zamknięty kod źródłowy. W przypadku Nvidii to przecież zainstalujesz sterowniki ze strony producenta (w odróżnieniu od tych debów z repozytoriów, ale to szczególny przypadek), dokładniej skompilujesz ich prekompilowane binarki i nierzadko załadujesz serwer x-ów, który co prawda segfaultuje po chwili, co nie usprawiedliwia tego, że sterowniki zupełnie nie pasują. Różne wersje ABI wymagają zmiany sposobu ładowania bibliotek, itp. To jak dodasz wpis do xorg.conf:
Section "ServerFlags"
Option "IgnoreABI" "True"
W logach zwykle znajdujesz informację typu:
This server has an unsupported input driver ABI version (have xx.x, need < yy.y). The driver will continue to load, but may behave strangely.
ABI określa sposób wywoływania podprogramów, przekazywania argumentów, odbieranie, liczbę, znaczenie, sposób wywoływania (syscall) oraz format plików obiektowych czy bibliotek (np. pliki ELF). W Linuxie nie dba się jednak o zgodność na poziomie ABI, tylko na poziomie API (kodu żródłowego). Co z tego jak programów z jednego systemu linuksowego przeważnie nie idzie uruchomić na innym (wyjątek BSD).
Z drugiej strony freedesktop.org - przeczytaj sobie choćby to wiki jak zmieniają się wersje ABI:
http://www.x.org/wiki/XorgModuleABIVersions
Znamienne zdanie:
The goal of the ABI management is to allow the master branch of the various input drivers to compile when bisecting the server. If multiple changes to the server's ABI are required, these changes are usually accumulated and pushed in one merge.
Ładny mi z tego "goal"
