Jusko Napisano Luty 18, 2011 Zgłoszenie Share Napisano Luty 18, 2011 Witam. Sprawa wyglada tak. Skompilowalem sobie najnowsza wersje GemRB. Mimo ustawienia prefiksu kompilacji gdzies w moim /home, nie zadowala mnie to rozwiazanie (masa syfu po kompilacji i musialbym luskac co trzeba do dzialania a co nie). Poczytalem cos o przebudowie .spec itd...ale niewiele z tego lapie. Mam kod zródlowy wlasnie skompilowany - co potrzebuje teraz do budowy rpm, nie mam zadnego speca ani nic - wiadomo, czyste zródelka dopiero skompilowane. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
thof Napisano Luty 18, 2011 Zgłoszenie Share Napisano Luty 18, 2011 Od tego momentu http://wiki.fedora.pl/wiki/Rpmbuild#Budowa_pakietu_w_oparciu_o_plik_spec. do samego dołu. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
sokar620 Napisano Luty 18, 2011 Zgłoszenie Share Napisano Luty 18, 2011 Zobacz sobie checkinstall, który sam robi paczki. Program jest dość leciwy i nie wiem czy na pewno poprawnie zadziała. Na stronie programu jest wersja 1.6.2 z którą miałem problemy, lepiej sprawowała mi się 1.6.0 z rpm.pbone.net (paczka jest dla FC7 ale się instaluje). Co do przebudowy .spec, jeśli nie posiadasz żadnego .spec albo src.rpm poprzedniej wersji programu to zostaje raczej samodzielnie stworzenie takiego pliku. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
borzole Napisano Luty 19, 2011 Zgłoszenie Share Napisano Luty 19, 2011 Jesli to Cie uszczesliwi to dla sportu zbudowalem dzis ten Twój engine. Tu masz speca: http://dl.dropbox.co...srpm/gemrb.spec do zródel w wersji gemrb-0.6.3.tar.gz paczke mam, ale nie dam a to z dwóch wzgledów: - to, ze sie paczka zbudowala to jeszcze nie znaczy, ze engine jest ok - pocwicz sobie budowanie, a jak nie dasz rady to Ci wtedy dam paczke srpm [EDIT] tak w ogóle to zródelka byly ciut niestandardowe, trzeba bylo wybrac cos jeszcze prostszego na poczatek Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Jusko Napisano Luty 20, 2011 Autor Zgłoszenie Share Napisano Luty 20, 2011 Jak widac po godzinie pisania postu - walczylem do upadlego (jest godzina 4:17 rano ), niemniej paczka zbudowana i zainstalowana. Nieco walczylem z tym jak to upakowac, gdyz rpmbuild co chwile sypal mi jakims bledem, jednak analizujac je doszedlem do tego co i jak. Dla sportu pocwicze jeszcze ze zródelkiem czegokolwiek. Wprawdzie podbramkowe sytuacje jak GemRB zdarzaja sie raz na nie wiem jaki czas, ze nie ma w repo paczki i nie dostarcza jej autor, lecz wiedza sie przyda (wlasnie dlatego do kompilacji wybralem to a nie co innego - chce zagrac sobie w Planescape: Torment a Wine wole nawet nie meczyc, zawiodlo mnie ostatnio na calej linii juz ostatecznie). Dziekuje kazdemu niezmiernie za pomoc. Jesli generalnie sprowadza sie to do edycji takich spec, to moze ta budowa nie jest AZ tak tragiczna. Mam jednak pytanie - biblioteki wymagane i dostarczane ze speca. Utworzyles speca, zapisales go, utworzyles RPM-a i potem dopisales je do speca - tak? ps: nie wiedzialem, ze checkinstall obsluguje tez rpm. Uzywalem go dawniej pod Ubuntu/Debianem, jednak tworzyl nieco dziwne paczki - nie obslugiwaly zaleznosci (tj. nie dociagaly paczki zaleznosci brakujacych, gdy zabraklo ich w systemie nie dalo sie deba zainstalowac). Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
borzole Napisano Luty 20, 2011 Zgłoszenie Share Napisano Luty 20, 2011 Mam jednak pytanie - biblioteki wymagane i dostarczane ze speca. Utworzyłeś speca, zapisałeś go, utworzyłeś RPM-a i potem dopisałeś je do speca - tak? Ja to robię tak, że nawet nie staram się dowiedzieć co powinno być w sekcjach "Requires" i "Provides" . Podczas wstępnego budowania paczki to po prostu jest wypluwane w komunikatach, więc robię kopiuj-wklej i buduję jeszcze raz z nowym specem (może można prościej i szybciej, ale potrafię budować tylko proste paczki). Teraz druga sprawa, wkleiłem na chama np. Requires: libSDL-1.2.so.0 najlepiej gdybyś zrobił teraz yum provides */libSDL-1.2.so.0 dostałbyś, że biblioteka jest dostarczana przez SDL-1.2... i powinieneś (?) zmienić to na Requires: SDL czy tam nawet z numerkiem <= 1.2 Dobrze jest to sprawdzić, bo może się okazać, że 10 bibliotek jest dostarczane przez jedną paczkę. Zresztą nie wiem nawet jak sobie yum radzi z zależnościami podanymi w postaci bibliotek, a nie paczek Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
ExtK Napisano Luty 20, 2011 Zgłoszenie Share Napisano Luty 20, 2011 Tutaj jest dobry kurs budowania pakietów http://repo.dobremiasto.net/articles/kurs_budowania_pakietow_rpm Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Jusko Napisano Luty 20, 2011 Autor Zgłoszenie Share Napisano Luty 20, 2011 Dwa pytania: GemRB nie wymagał do kompilacji wiele, dzięki czemu w jego specu (dzięki borzole!) wygląda to tak: # (...) na podstawie pliku INSTALL ze źródeł, sprawdzam co w Fedorze dostarcza dane zależności # narzędzia wymagane do budowy paczki BuildRequires: cmake, make, gcc-c++ # biblioteki wymagane do budowy paczki (ich źródła, a nie binarki ...chyba) BuildRequires: zlib-devel, python-devel, SDL-devel # opcjonalnie, można zbudować paczkę bez tych zależności: # (optional, for sound) BuildRequires: openal-soft-devel # (optional, for fast lower-quality sound) BuildRequires: SDL_mixer-devel # (optional, for the png importer plugin) BuildRequires: libpng-devel (...) Teraz chciałbym skompilować frozen-bubble (wiem, że udostępniają oni swój spec, ale chciałbym przerobić gembrowski pod niego i nieco nauczyć się budowy speca). Klepię yum-builddep frozen-bubble i co otrzymuję: Rozwiązano zależności ================================================================================ Pakiet Architektura Wersja Repozytorium Rozmiar ================================================================================ Instalowanie: SDL_Pango-devel i686 0.1.2-11 fedora 22 k SDL_mixer-devel i686 1.2.11-4.fc14 fedora 19 k glib2-devel i686 2.26.0-2.fc14 fedora 1.6 M perl-ExtUtils-MakeMaker noarch 6.56-141.fc14 updates 292 k perl-SDL i686 2.1.3-13.fc14 fedora 292 k Instalowanie, aby rozwiązać zależności: SDL-devel i686 1.2.14-8.fc14 fedora 362 k SDL_Pango i686 0.1.2-11 fedora 21 k SDL_gfx i686 2.0.17-3.fc12 fedora 54 k SDL_net i686 1.2.7-6.fc12 fedora 22 k SDL_ttf i686 2.0.10-1.fc14 fedora 27 k alsa-lib-devel i686 1.0.24-1.fc14 updates 1.1 M autoconf noarch 2.66-2.fc14 fedora 903 k automake noarch 1.11.1-5.fc14 fedora 545 k cairo-devel i686 1.10.2-1.fc14 updates 601 k fontconfig-devel i686 2.8.0-2.fc14 fedora 209 k freetype-devel i686 2.4.2-4.fc14 updates 365 k kernel-headers i686 2.6.35.11-83.fc14 updates 742 k libX11-devel i686 1.3.4-3.fc14 fedora 1.0 M libXau-devel i686 1.0.6-1.fc14 fedora 13 k libXdamage-devel i686 1.1.3-1.fc14 fedora 8.9 k libXext-devel i686 1.1.2-2.fc14 fedora 77 k libXfixes-devel i686 4.0.5-1.fc14 fedora 12 k libXft-devel i686 2.1.14-1.fc13 fedora 18 k libXrandr-devel i686 1.3.0-5.fc13 fedora 19 k libXrender-devel i686 0.9.6-1.fc14 fedora 16 k libXxf86vm-devel i686 1.1.0-1.fc13 fedora 17 k libdrm-devel i686 2.4.22-1.fc14 fedora 64 k libogg-devel i686 2:1.2.0-1.fc14 fedora 12 k libpng-devel i686 2:1.2.44-1.fc14 fedora 111 k libvorbis-devel i686 1:1.3.1-2.fc14 fedora 20 k libxcb-devel i686 1.7-1.fc14 fedora 139 k mesa-libGL-devel i686 7.9-5.fc14 updates 493 k mesa-libGLU-devel i686 7.9-5.fc14 updates 111 k pango-devel i686 1.28.1-4.fc14 fedora 331 k perl-CPAN noarch 1.9402-141.fc14 updates 249 k perl-Digest-SHA i686 1:5.47-141.fc14 updates 61 k perl-ExtUtils-ParseXS noarch 1:2.2100-141.fc14 updates 43 k perl-Test-Harness noarch 3.17-141.fc14 updates 242 k perl-devel i686 4:5.12.3-141.fc14 updates 477 k pixman-devel i686 0.18.4-1.fc14 fedora 15 k xorg-x11-proto-devel noarch 7.4-39.fc14 updates 250 k zlib-devel i686 1.2.5-2.fc14 fedora 45 k Podsumowanie transakcji ================================================================================ Install 42 Package(s) Całkowity rozmiar: 11 M Całkowity rozmiar pobierania: 6.6 M Rozmiar po zainstalowaniu: 59 M W porządku? [t/N]: Czy to wszystko mam zawrzeć w sekcji BuildRequires:? A konkretnie czy wystarczy tylko sekcja: SDL_Pango-devel i686 0.1.2-11 fedora 22 k SDL_mixer-devel i686 1.2.11-4.fc14 fedora 19 k glib2-devel i686 2.26.0-2.fc14 fedora 1.6 M perl-ExtUtils-MakeMaker noarch 6.56-141.fc14 updates 292 k perl-SDL Sprawa druga - statyczne pakiety RPM (nie wiem czy dobrze się wyrażam). Czy można w pakiecie RPM wbudować już zależności? Na przykładzie - paczka z programem potrzebuje zależności, które musi dociągnąć z repo. Czy idzie zbudować paczkę z wbudowanymi z nią zależnościami, aby bez problemu zainstalować ją od razu na komputerze bez dostępu do internetu? ps: budowa pakietów dobra sprawa, a tym bardziej jeśli autorzy udostępniają spec. Chwila zabawy i mam najnowszą wersję OpenShot ze źródełek, ponieważ na stronie jest stara wersja dla F13 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
borzole Napisano Luty 20, 2011 Zgłoszenie Share Napisano Luty 20, 2011 To nie tak. Sekcja "Instalowanie" wyswietli Ci tylko brakujace zaleznosci, czyli jak cos masz juz w systemie to nie zostanie uwzglednione. A nastepna sekcja "Instalowanie, aby rozwiazac zaleznosci" to juz w ogóle zaleznosci tych zaleznosci, czyli cos co Cie w ogóle nie interesuje przy budowie paczki. Aby zobaczyc zaleznosci paczki * juz zainstalowanej np. "mc" rpm -q mc --requires * z dysku rpm -qp /path/to/mc.xxx.rpm --requires * src.rpm mozna rozpakowac jak archiwum i obejrzec speca;) * wyszukaj na koji http://koji.fedorapr...o?rpmID=2326805 [edit] Wbudowanie zaleznosc to tylko wieksza paczka. Zawodowcy widzialem ze buduja paczki z wielu archiwów, gdzies w specu podaja rózne zródla, aplikuja patch'y, albo generuja z jednego archiwum kilka paczek. Cuda na patyku robia, temat rzeka. Nie wiem, czy zauwazyles, ale jest nawet wtyczka eclipse do edycji spec'ów 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ę