Środowisko deweloperskie - PLD

Transkrypt

Środowisko deweloperskie - PLD
2017/03/02 07:56
1/3
Środowisko deweloperskie
Domyślny kernel sprawdza się większości wypadków, jednak czasami chcemy mieć jego najświeższą
wersję lub specyficzną dla PLD odmianę. W tym rozdziale opiszemy budowanie kernela vaniliowego
(bez jakichkolwiek łatek). Na serwerze dostępne są podstawowe alternatywne pakiety kernela, jednak
nie ma do nich modułów dodatkowych np.: nvidia, madwifi, dlatego zbudujemy wszytko samodzielnie.
Założyłem, że będziemy chcieli mieć najnowsze dostępne wersje pakietów, dlatego przykłady będą
dotyczyć tagów DEVEL i HEAD. Jest to ryzykowne i nie ma gwarancji, że budowanie się w takim
wypadku uda, jednak w wielu wypadkach gra jest warta świeczki.
Środowisko deweloperskie
Oprócz oczywistych pakietów takich jak gcc i okolic, będziemy potrzebować kompletnego środowiska
do budowania pakietów.
Kernel
Wchodzimy do katalogu ~/rpm/SPECS i zaczynamy od podstawowych pakietów jądra (trochę to
potrwa):
./builder -bb kernel-vanilla -r HEAD
zanim zainstalujemy nowo zbudowane pakiety dobrze jest od razu zbudować dodatkowe moduły
kernela.
Moduły spoza jądra
Aby zbudować moduły spoza źródeł jądra potrzebujemy pakiet kernel-module-build, który jednak
nie jest budowany domyślnie. Dlatego teraz zbudujemy pakiety niezależne od architektury (kernelmodule-build, kernel-source, itd.). Jeśli, dopiero co budowaliśmy kernel (jak wyżej), to możemy
użyć szybszej metody, w katalogu ~/rpm/packages:
./repackage.sh kernel-vanilla/kernel-vanilla.spec --with noarch
w przeciwnym wypadku:
./builder -bb kernel-vanilla -r HEAD --with noarch
Pakiety trafiły do katalogu ~/rpm/RPMS, więc instalujemy je Poldkiem z użyciem parametru -n
home:
poldek -n home -i kernel-vanilla-module-build
PLD-users.org - http://pld-users.org/
Last update:
2009/08/08 pl:przewodniki:budowanie-niestandardowego-kernela http://pld-users.org/pl/przewodniki/budowanie-niestandardowego-kernela
22:50
Nvidia
Budujemy moduł nvidia, jako że budujemy alternatywny kernel musimy użyć parametru
–alt_kernel
./builder -bb xorg-driver-video-nvidia -r DEVEL --alt_kernel vanilla
Teraz kolej na sterownik X.org:
./builder -bb xorg-driver-video-nvidia.spec -r DEVEL --without kernel
Madwifi
Poniżej przykład budowania sterownika WiFi dla kart z układem Atheros:
./builder -bb madwifi-ng -r HEAD --alt_kernel vanilla
Instalacja
Kiedy wszystkie pakiety są gotowe, możemy je zainstalować za pomocą parametru -n home, jak to
zostało wcześniej opisane. Niestandardowe pakiety będą miały słowo vanilla w nazwie, przez co nie
będą kolidować z zainstalowanymi już paczkami. Co więcej, pliki instalowane do /boot (vmlinuz, initrd,
itd.) też będą miały alternatywną nazwę, dlatego należy dokonać poprawek w konfiguracji
bootloadera. Jeśli używamy lilo to dodatkowo instalujemy je na nowo i możemy restartować system.
Uwagi
zainstalowane pakiety *-module-build, *-headers itd. nie będą już nam potrzebne i
możemy je odinstalować, zbudowane RPM-y jednak warto zachować.
więcej o budowaniu pakietów w podręczniku dewelopera.
budowanie pakietów z DEVEL lub HEAD nie zawsze się uda, możemy jednak użyć wersji
oznaczonych tagami zaczynającymi się od auto np.: auto-th-kernel-2_6_25_9-4 w przypadku
kernel.spec. Dzięki temu będziemy mieli pewność, że w repo SOURCES będą dostępne
wszystkie wymagane łatki.
http://pld-users.org/
Printed on 2017/03/02 07:56
2017/03/02 07:56
3/3
From:
http://pld-users.org/ - PLD-users.org
Permanent link:
http://pld-users.org/pl/przewodniki/budowanie-niestandardowego-kern
ela
Last update: 2009/08/08 22:50
PLD-users.org - http://pld-users.org/
Środowisko deweloperskie

Podobne dokumenty