Skocz do zawartości

Pakiety *.src.rpm


2-D

Rekomendowane odpowiedzi

Jestem kompletnym nowicjuszem, więc sprawa będzie prosta:

 

Jeśli skompiluję wszystkie pakiety *.src.rpm z SRPM'ów fc2 to otrzymam pakiety

na moją architekturę procesora (czyli 4 CD ze wszystkimi pakietami fc2, tylko że

*.i686.rpm, które będę mógł zainstalować jak oryginalne binaria fc2), tak?

 

Jeśli tak, to czy te pakiety (*.src.rpm) można skompilować "od razu" z ich

pierwotnej postaci do pakietów *.rpm (*.src.rpm --> *.rpm), czy trzeba je

najpierw gdzieś zainstalować, a póżniej skompilować?

 

I jeszcze jedno: Do czego służą pliki *.hdr

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli skompiluję wszystkie pakiety *.src.rpm z SRPM'ów fc2 to otrzymam pakiety

na moją architekturę procesora (czyli 4 CD ze wszystkimi pakietami fc2, tylko że

*.i686.rpm, które będę mógł zainstalować jak oryginalne binaria fc2), tak?

Żeby uzyskać paczki najbliższe architekturze, warto pogrzebać w opcjach RPM:

http://www.dobremiasto.net/~hoppke/too_muc...pm/2_intro.html

http://www.dobremiasto.net/~hoppke/too_muc...n/kompilat.html

U mnie bez tego budowały sie paczki pod i386 :-)

Jeśli tak, to czy te pakiety (*.src.rpm) można skompilować "od razu" z ich

pierwotnej postaci do pakietów *.rpm (*.src.rpm --> *.rpm), czy trzeba je

najpierw gdzieś zainstalować, a póżniej skompilować?

Są dwa sposoby:

rpmbuild --rebuild paczka.src.rpm

lub najpierw zainstalować paczkę src.rpm, a potem dopiero budować:

rpmbuild -bb --clean ścieżka_do_pliku.spec

To drugie przydaje się, gdy chcesz zmieniać coś w pliku SPEC - przez wyłączenie niepotrzebnych opcji programu można przyspieszyc kompilację, zmniejszyć wielkość binarki i nie kompilować niepotrzebnych rzeczy.

 

Aha, warto tak sobie ustawić (_rpma_ → RPM-a) ORT, by kompilować paczki jako zwykły użytkownik, a nie jako root (tak ze względów bezpieczeństwa).

I jeszcze jedno: Do czego służą pliki *.hdr

To są zapewne pliki nagłówkowe yum albo up2date - zawarte są w nich informacje dotyczące wersji pakietu, jego opisu i wymaganych zależności. Dzięki temu możesz dowiedzieć się wielu informacji o pakiecie bez jego ściągania z internetu.

 

PS Taka kompilacja każdej paczki jest na dłuższą metę uciążliwa. Może byś spróbował Gentoo?

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki za wyjaśnienia.

 

A jeśli skompilowałbym wszystkie *.src.rpm od fc2 to czy instalowałaby sie ona

tak jak z oryginalnych binarii, tzn. bootowanie, instalator, wszystko tak somo?

 

Aha, i czy sposób "rpmbuild --rebuild paczka.src.rpm" zawiera opcje optymalizacji

i rozpoznaje procesor (coś takiego jak w gcc -O2, -march=athlon-xp)?

Odnośnik do komentarza
Udostępnij na innych stronach

A jeśli skompilowałbym wszystkie *.src.rpm od fc2 to czy instalowałaby sie ona

tak jak z oryginalnych binarii, tzn. bootowanie, instalator, wszystko tak somo?

Nie wiem, bo pozmieniają sie nazwy plików (u Ciebie będą się kończyć na .athlon.rpm). Zresztą kompilacja wszystkiego nie ma raczej sensu - zmarnujesz kilkadziesiąt godzin na marne, bo i tak pewnie wszystkiego nie zainstalujesz. Lepiej jest normalnie zainstalować, później skompilowac sobie paczki i je potem podmienić :-)

Aha, i czy sposób "rpmbuild --rebuild paczka.src.rpm" zawiera opcje optymalizacji

i rozpoznaje procesor (coś takiego jak w gcc -O2, -march=athlon-xp)?

Musisz stworzyć w katalogu użytkownika plik .rpmrc. Ja mam coś takiego:

optflags: athlon -march=athlon-xp -mcpu=athlon-xp -Os -fomit-frame-pointer -s -pipe -DNDEBUG -DG_DISABLE_ASSERT -z combreloc -m3dnow -msse -mfpmath=sse -mmmx

buildarchtranslate: i386: athlon
buildarchtranslate: i486: athlon
buildarchtranslate: i586: athlon
buildarchtranslate: i686: athlon
buildarchtranslate: athlon: athlon

Flaga -Os jest lepsza od -O2 szczególnie przy dużych plikach, bo powstają mniejsze binarki, które szybciej się ładują. Ostatnio fedora.us zaczęła ją wykorzystywać przy kompilacji Firefoksa.

 

Warto też stworzyć .rpmmacros. Ja mam tak:

%_topdir /home/y4kk0/rpm
%_tmppath /home/y4kk0/rpm/tmp
%packager gajownik
%vendor Replikatorzy szarej rzeczywistości

Nie trzeba kompilować wtedy z konta roota.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...