User Tools

Site Tools


pl:developingpld:builderscript

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
pl:developingpld:builderscript [2007-05-09 20:58]
michaloo
pl:developingpld:builderscript [2009-10-01 00:11]
qwiat small update
Line 1: Line 1:
- 
- 
-====== Skrypt builder ====== 
- 
- 
-===== Użycie ===== 
-Jako że skrypt znajduje się w podkatalogu //​rpm/​SPECS//,​ na początku musisz zmienić aktualną ścieżkę: ​ 
- 
- 
- 
-<​file>​$ cd 
-$ cd rpm/SPECS 
-</​file>​ 
-Teraz możesz wykonać ''​./​builder''​ (pamiętaj o kropce i ukośniku na początku) aby zobaczyć listę możliwych parametrów: ​ 
- 
- 
- 
-<​file>​$ ./builder 
-</​file>​ 
-Ogólna składnia wygląda tak:  
- 
- 
- 
-<​file>​$ ./builder [opcje] pakiet[.spec] 
-</​file>​ 
-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//: ​ 
- 
- 
- 
-<​file>​$ ./builder -bb -bc -R foo 
-</​file>​ 
-Aby wykonać pełną budowę pakietu, który aktualnie rozwijany jest w gałęzi //​DEVEL//: ​ 
- 
- 
- 
-<​file>​$ ./builder -bc -r DEVEL foo 
-</​file>​ 
-Aby zaktualizować hashe MD5 w powyższym pliku ''​spec'': ​ 
- 
- 
- 
-<​file>​$ ./builder -r DEVEL -U foo 
-</​file>​ 
  
pl/developingpld/builderscript.txt · Last modified: 2009-10-01 00:11 by qwiat