Skocz do zawartości

Tleenx


Rekomendowane odpowiedzi

Przeciez miałeś przekompilować tleenx2 <_<

 

Ściągasz http://zaskor.magma-net.pl/tlen/TleenX.spec i kopiujesz do katalogu $(rpm --eval %{_specdir}). Zamieniasz linijkę:

BuildRequires:    gtk+2-devel

na

BuildRequires:    gtk2-devel

Potem kopiujesz http://zaskor.magma-net.pl/tlen/tleenx.desktop oraz http://tleenx.sourceforge.net/tleenx2-CVS.tar.gz do katalogu $(rpm --eval %{_sourcedir}) i odpalasz to polecenie:

rpmbuild -bb `rpm --eval %{_specdir}`/TleenX.spec

Na koniec instalujesz skopmilowany pakiet.

Odnośnik do komentarza
Udostępnij na innych stronach

[root@localhost SOURCES]# rpmbuild -bb `rpm --eval %{_specdir}`/TleenX.spec

Wykonywanie(%prep): /bin/sh -e /var/tmp/rpm-tmp.68754

+ umask 022

+ cd /usr/src/redhat/BUILD

+ LANG=C

+ export LANG

+ unset DISPLAY

+ cd /usr/src/redhat/BUILD

+ rm -rf tleenx2

+ /usr/bin/gzip -dc /usr/src/redhat/SOURCES/tleenx2-CVS.tar.gz

+ tar -xf -

+ STATUS=0

+ '[' 0 -ne 0 ']'

+ cd tleenx2

++ /usr/bin/id -u

+ '[' 0 = 0 ']'

+ /bin/chown -Rhf root .

++ /usr/bin/id -u

+ '[' 0 = 0 ']'

+ /bin/chgrp -Rhf root .

+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .

+ exit 0

Wykonywanie(%build): /bin/sh -e /var/tmp/rpm-tmp.41375

+ umask 022

+ cd /usr/src/redhat/BUILD

+ cd tleenx2

+ LANG=C

+ export LANG

+ unset DISPLAY

+ CFLAGS='-O2 -g -pipe -m32 -march=i386 -mtune=pentium4'

+ export CFLAGS

+ CXXFLAGS='-O2 -g -pipe -m32 -march=i386 -mtune=pentium4'

+ export CXXFLAGS

+ FFLAGS='-O2 -g -pipe -m32 -march=i386 -mtune=pentium4'

+ export FFLAGS

++ find . -name config.guess -o -name config.sub

+ ./configure --build=i686-redhat-linux-gnu --host=i686-redhat-linux-gnu --target=i386-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info

/var/tmp/rpm-tmp.41375: line 34: ./configure: No such file or directory

błąd: Błędny status wyjścia z /var/tmp/rpm-tmp.41375 (%build)

 

 

Błędy budowania RPM-a:

Błędny status wyjścia z /var/tmp/rpm-tmp.41375 (%build)

Odnośnik do komentarza
Udostępnij na innych stronach

przelatuje bardzo duzo poczym :

make[2]: *** [install-data-local] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/tleenx2'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/usr/src/redhat/BUILD/tleenx2'
make: *** [install-recursive] Error 1
błąd: Błędny status wyjścia z /var/tmp/rpm-tmp.30933 (%install)


Błędy budowania RPM-a:
   Błędny status wyjścia z /var/tmp/rpm-tmp.30933 (%install)

Odnośnik do komentarza
Udostępnij na innych stronach

Przekompilowywałem tylko libtlen, ale wydaje mi się, że powinieneś pozamieniać %{tmpdir} na %{_tmppath}. W PLD porobili chyba sobie jakieś inne makra :/

 

A tak OT, to nie kompiluj programów na koncie roota. Zrób sobie własne środowisko do kompilowania. Najprościej będzie jak zainstalujesz fedora-rpmdevtools z Fedora Extras, po czym uruchomisz program fedora-buildrpmtree. Możesz jeszcze zobaczyc to → http://fedoranews.org/tchung/rpmbuild/ (szczególnie kóńcówkę o wyłaczeniu budowania paczek debuginfo).

Odnośnik do komentarza
Udostępnij na innych stronach

Dopisz przed %description tę linijkę:

%define _pixmapsdir    /usr/share/pixmaps/%{name}

A tak swoją drogą, to te pliki spec można by napisać ładniej <_<

 

Mi się program skompilował i zainstlował bez problemów :P

 

/edit/

Jeśli pluje się w trakcie kompilacji o libtlen, to odpal program ldconfig. W paczce libtlen ktos zapomniał o wywołaniu tego programu w sekcjach %post i %postun :/

Odnośnik do komentarza
Udostępnij na innych stronach

make[2]: *** [install-data-local] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/tleenx2'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/usr/src/redhat/BUILD/tleenx2'
make: *** [install-recursive] Error 1
błąd: Błędny status wyjścia z /var/tmp/rpm-tmp.58554 (%install)


Błędy budowania RPM-a:
   Błędny status wyjścia z /var/tmp/rpm-tmp.58554 (%install)

 

i ciągle to :( z konta root a z usera tak :

 

make[1]: Leaving directory `/home/blazejwiecha/rpmbuild/BUILD/tleenx2'
+ exit 0
Wykonywanie(%install): /bin/sh -e /var/tmp/rpm-tmp.91208
+ umask 022
+ cd /home/blazejwiecha/rpmbuild/BUILD
+ cd tleenx2
+ LANG=C
+ export LANG
+ unset DISPLAY
+ rm -rf '/%{tmpdir}/tleenx2-CVS'
rm: cannot remove `/%{tmpdir}/tleenx2-CVS': Permission denied
błąd: Błędny status wyjścia z /var/tmp/rpm-tmp.91208 (%install)


Błędy budowania RPM-a:
   Błędny status wyjścia z /var/tmp/rpm-tmp.91208 (%install)

Odnośnik do komentarza
Udostępnij na innych stronach

rm: cannot remove `/%{tmpdir}/tleenx2-CVS': Permission denied

Nie czytasz tego co Ci napisałem powyżej. Miałes pozamieniać w specu %{tmpdir} na %{_tmppath}. Zobacz teraz czy w katalogu głównym nie masz jakichś dziwnych katalogów.

 

Jak widzisz, lepiej jest budować na koncie zwykłego użytkownika, bo można wyłapać więcej błędów i nie skopie się przez przypadek systemu.

Odnośnik do komentarza
Udostępnij na innych stronach

Jest , wyszło :) Faktycznie nie przeczytałem jednego z tym tmppatch :) to poskutkowało

 

jedno pytanko , czy taki pakiet zrobiony na moim kompie zadziała na kazdym innym ??? Czy wszędzie pakiety trzeba robić nowe , bo tak myśle moze by ktos wysłał pakiet taki zrobiony dla FC3 zeby szło potem sciagac za pomocą Yum ??/

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli nie zmieniałeś standardowych opcji kompilatora oraz używasz dystrybucyjnych bibliotek (repozytorium atrpms odpada), to ruszy bez problemów.

 

Jak ktos chce, to może zrobić własne repozytorium i udostępniac to innym. Najlepiej jakby ktoś został deweloperem Fedora Extras i w tym repozytorium to umieścił. Wtedy tleenx2 mozna by zainstlować nawet bez dodawania jakichkolwiek repo do konfiga, bo Extras będzie w standardowej konfiguracji FC4.

 

Mi sie nie chce, bo po pierwsze nie używam tego programu, a po drugie trzeba się taką paczką jednak opiekować.

 

BTW Te zmiany co zrobiłeś w specu (linijka z %define) są niezbyt ładnym obejściem problemu. Nalezałoby to zrobić poprawniej ;-) rpmlint jest przydatny w takich sprawach.

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
×
×
  • Dodaj nową pozycję...