2-D Napisano Maj 27, 2004 Zgłoszenie Share Napisano Maj 27, 2004 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 More sharing options...
gajownik Napisano Maj 27, 2004 Zgłoszenie Share Napisano Maj 27, 2004 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 More sharing options...
2-D Napisano Maj 28, 2004 Autor Zgłoszenie Share Napisano Maj 28, 2004 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 More sharing options...
gajownik Napisano Maj 29, 2004 Zgłoszenie Share Napisano Maj 29, 2004 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 More sharing options...
Rekomendowane odpowiedzi
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ę