Author: michaloo Date: Wed May 9 18:44:11 2007 GMT
Module: PLDWWW URL:
http://pld-linux.org/michaloo/DevelopingPLDpl/BuilderScript
---- Log message:
initial version
---- Page affected: michaloo/DevelopingPLDpl/BuilderScript
---- Diffs:
================================================================
The comment on the change is:
initial version
New page:
= Skrypt builder =
== Użycie ==
Jako że skrypt znajduje się w podkatalogu "rpm/SPECS", na początku musisz
zmienić aktualną ścieżkę:
{{{
$ cd
$ cd rpm/SPECS
}}}
Teraz możesz wykonać {{{./builder}}} (pamiętaj o kropce i ukośniku na początku)
aby zobaczyć listę możliwych parametrów:
{{{
$ ./builder
}}}
Ogólna składnia wygląda tak:
{{{
$ ./builder [opcje] pakiet[.spec]
}}}
Rozszerzenie {{{.spec}}} jest opcjonalne, skrypt doda je w razie potrzeby.
Najczęściej używane opcje:
* {{{-bb}}} aby zbudować tylko pakiet binarny (pomija tworzenie pakietu
źródłowego RPM)
* {{{-bc}}} aby posprzątać po udanym budowaniu pakietu (usuwa scieżkę, w
której był budowany pakiet)
* {{{-r GAŁĄŹ}}} aby użyć źródeł z konkretnej gałęzi czy wersji danego
pakietu (lista dostępnych odgałęzień widoczna jest na początku procesu
budowania)
* {{{-U}}} aby skompletować wszystkie źródła i uaktualnić ich hashe MD5 w
pliku {{{spec}}}
* {{{-5}}} aby uaktualnić hashe MD5 używając lokalnych źródeł
* {{{--with OPCJA}}} lub {{{--without OPCJA}}} aby zbudować pakiet z
niestandardowymi opcjami (dostępne opcje są wypisane na początku procesu
budowania)
* {{{-R}}} aby zebrać zależne wymagania pakietu, zaleca się instalację
{{{rpm-getdeps}}} dla lepszego rezultatu
{{{builder}}} automatycznie kompletuje wszystkie pliki (włączając w to plik
{{{spec}}}) potrzebne do zbudowania danego pakietu (jeżeli licencja na to
pozwala, w innym wypadku musisz ręcznie ściągnąć konieczne pliki i zapisać je w
"~/rpm/SOURCES"). Kiedy wszystkie zależności są spełnione, {{{builder}}}
uruchamia program {{{rpmbuild}}}, który inicjuje proces budowy. {{{rpmbuild}}}
zaczyna od znalezienia ewentualnych niespełnionych zależności potrzebnych do
zakończenia procesu. Jeżeli jakieś znajdzie, {{{builder}}} zakończy działanie
wypisując listę wszystkich potrzebnych pakietów. Możesz użyć programu
{{{poldek}}} aby je ściągnąć i zainstalować.
Gdy proces budowy zostanie zakończony, wszystkie binarne pliki RPM będą
natychmiast dostępne w "~/rpm/RPMS", a pakiety RPM ze źródłami (jeżeli takowe
miały powstać) zostaną zapisane "~/rpm/SRPMS".
'''Uwaga:''' wszystkie pakiety PLD są przygotowane do zbudowania w środowisku
normalnego użytkownika (bez specjalnych przywilejów) i z powodu ewentualnego
zagrożenia bezpieczeństwa nigdy nie powinieneś używać konta root do budowy tych
pakietów. Miej na uwadze, że niewłaściwie działający skrypt ma pełne prawo do
zapisu w twoim systemie plików i może coś uszkodzić. Jest to szczególnie
istotne przy pracy z własnymi plikami {{{spec}}}, ponieważ niewielki błąd może
cię kosztować godziny czy dni pracy.
== Przykłady ==
Aby zbudować normalny (binarny) pakiet "foo":
{{{
$ ./builder -bb -bc -R foo
}}}
Aby wykonać pełną budowę pakietu, który aktualnie rozwijany jest w gałęzi
"DEVEL":
{{{
$ ./builder -bc -r DEVEL foo
}}}
Aby zaktualizować hashe MD5 w powyższym pliku {{{spec}}}:
{{{
$ ./builder -r DEVEL -U foo
}}}
_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit