PLDWWW: pl/DevelopingPLD/BuilderScript
qwiat
qwiat at pld-linux.org
Sun Jun 28 02:16:24 CEST 2009
Author: qwiat Date: Sun Jun 28 00:16:23 2009 GMT
Module: PLDWWW URL: http://pld-linux.org/pl/DevelopingPLD/BuilderScript?action=diff&rev2=5&rev1=4
---- Log message:
update, redesign
---- Page affected: pl/DevelopingPLD/BuilderScript
---- Diffs:
================================================================
The comment on the change is:
update, redesign
## page was renamed from michaloo/DevelopingPLDpl/BuilderScript
= Skrypt builder =
+
+ Skrypt jest dostarczany razem z pakietem ''rpm-build-tools'', poza tym znajduje się dodatkowo w katalogu ''~/rpm/packages'' - środowisku utworzonym za pomoca polecenia:
+ {{{
+ $ builder --init-rpm-dir
+ }}}
+
+ {{{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/packages/foo''). 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ć.
== Użycie ==
Zanim zaczniesz upewnij się, że twoje
- [wiki:DevelopingPLD/PreparingWorkingEnvironment środowisko budowania] jest przygotowane.
+ [wiki:pl/DevelopingPLD/PreparingWorkingEnvironment środowisko budowania] jest przygotowane.
- Jako że skrypt znajduje się w podkatalogu ''rpm/SPECS'', na początku musisz zmienić aktualną ścieżkę:
+ Teraz możesz wykonać {{{/usr/bin/builder}}}, aby zobaczyć listę możliwych parametrów:
{{{
- $ 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
+ $ builder
}}}
Ogólna składnia wygląda tak:
{{{
- $ ./builder [opcje] pakiet[.spec]
+ $ builder [opcje] pakiet[.spec]
}}}
Rozszerzenie {{{.spec}}} jest opcjonalne, skrypt doda je w razie potrzeby.
@@ -38, +38 @@
* {{{-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
+ * {{{--target ARCH}}} pozwala budować pakiety dla innej architektury, niż architektura systemu.
- {{{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
+ $ 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
+ $ builder -bc -r DEVEL foo
}}}
Aby zaktualizować hashe MD5 w powyższym pliku {{{spec}}}:
{{{
- $ ./builder -r DEVEL -U foo
+ $ builder -r DEVEL -U foo
}}}
+ Instalacja dla wybranej architektury:
+
+ {{{
+ $ builder --target i486 foo
+ }}}
+
+ == Zbudowane pakiety ==
+
+ 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''. Pakiety zapisane w ''~/rpm/RPMS'' są łatwo dostępne w poldku dzięki źródłu ''home'':
+ {{{
+ $ poldek -n home
+ }}}
+
+ == Uwagi ==
+
+ 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.
+
More information about the pld-cvs-commit
mailing list