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

Reply via email to