Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2009-02-27 10:55:23

  artfrik - Użytkownik

artfrik
Użytkownik
Zarejestrowany: 2009-02-27

Budowanie paczki deb i puste katalogi (iproute2)

Mam problem z budową paczki iproute2, sciągnąłem sobie źródełka, spatchowalem, wpisuje

Kod:

debian/rules build

i ok, wszystko w porządku, zero błędów, później

Kod:

debian/rules binary

i też pozornie ok, tworzy nawet paczkę deb tyle że z pustymi w środku katalogami bez plików...
Spotkał się ktoś z czymś takim?
Walczę już z tym trzeci dzień, googluje i googluje ale nic na temat nie mogę znaleźć :/

Ostatnio edytowany przez artfrik (2009-02-27 10:57:27)

Offline

 

#2  2009-02-27 11:05:24

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Budowanie paczki deb i puste katalogi (iproute2)

1. należy użyć fakeroot
2. czemu nie skorzystasz z dpkg-buildpackage -rfakeroot automatyzującego operację
3. pokaż debian/rules i wyniki poleceń

Ostatnio edytowany przez azhag (2009-02-27 11:05:38)


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#3  2009-02-27 11:12:18

  artfrik - Użytkownik

artfrik
Użytkownik
Zarejestrowany: 2009-02-27

Re: Budowanie paczki deb i puste katalogi (iproute2)

wszystkie operacje wykonuje z konta roota, ze zwykłego też próbowałem, z dpkg-bulidpackage --fakeroot też korzystałem, znalazłem opis robienia paczki małymi krokami, więc spróbowałem tak zrobić, żeby wyczaić gdzie jest błąd...

Kod:

serwer:/usr/src/debian/new/iproute2-2.6.26.arti# debian/rules
dh_testdir
# Add here commands to configure the package.
cp -f /usr/share/misc/config.sub config.sub
cp -f /usr/share/misc/config.guess config.guess
./configure --build i486-linux-gnu --prefix=/usr --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info CFLAGS="" LDFLAGS="-Wl,-z,defs"
TC schedulers
 ATM    no

Offline

 

#4  2009-02-27 12:14:03

  mariaczi - Użytkownik

mariaczi
Użytkownik
Zarejestrowany: 2007-10-02

Re: Budowanie paczki deb i puste katalogi (iproute2)

Widze, że nie tylko mnie dotknął ten problem. Ani jedna, ani druga metoda niestety nie przynosiła rezultatu pozytywnego. iproute2 przy procesie instalacji korzysta z "install" i stąd najprawdopodobniej taki efekt budowy paczki. Aby paczka zbudowała się z zawartością zmień w bodaj Makefile DSTDIR czy coś koło tego na DSTDIR=/sciezka/gdzie/masz/zrodla/iproute2/debian/iproute2. Pisze z pamięci, więc nie mam pewności co do zmiennej DSTDIR czy tak na pewno brzmi. Mam nadzieję, że odszukasz i po wpisaniu pełnej ścieżki odpiszesz i ew. wyprostujesz :)

Powodzenia!

Offline

 

#5  2009-02-27 18:32:39

  artfrik - Użytkownik

artfrik
Użytkownik
Zarejestrowany: 2009-02-27

Re: Budowanie paczki deb i puste katalogi (iproute2)

No i niestety, nie udało się, czy przyczyną może być to iż zainstalowałem spatchowane iproute metodą tradycyjną?
tzn. przez make && make install??

Kod:

/usr/src/debian/new/iproute2-2.6.26.arti/debian# dpkg-buildpackage
install: `etc/iproute2/rt_realms' i `/usr/src/debian/new/iproute2-2.6.26.arti//etc/iproute2/rt_realms' to ten sam plik
install: `etc/iproute2/ematch_map' i `/usr/src/debian/new/iproute2-2.6.26.arti//etc/iproute2/ematch_map' to ten sam plik
install: `etc/iproute2/rt_protos' i `/usr/src/debian/new/iproute2-2.6.26.arti//etc/iproute2/rt_protos' to ten sam plik
install: `etc/iproute2/rt_tables' i `/usr/src/debian/new/iproute2-2.6.26.arti//etc/iproute2/rt_tables' to ten sam plik
install: `etc/iproute2/rt_scopes' i `/usr/src/debian/new/iproute2-2.6.26.arti//etc/iproute2/rt_scopes' to ten sam plik
install: `etc/iproute2/rt_dsfield' i `/usr/src/debian/new/iproute2-2.6.26.arti//etc/iproute2/rt_dsfield' to ten sam plik
make[1]: *** [install] Błąd 1
make[1]: Opuszczenie katalogu `/usr/src/debian/new/iproute2-2.6.26.arti'
make: *** [install] Błąd 2
dpkg-buildpackage: niepowodzenie: debian/rules binary zwrócił status błędu 2

Offline

 

#6  2009-02-27 18:41:11

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Budowanie paczki deb i puste katalogi (iproute2)

Pokaż wreszcie ten rules!


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#7  2009-02-27 18:49:53

  artfrik - Użytkownik

artfrik
Użytkownik
Zarejestrowany: 2009-02-27

Re: Budowanie paczki deb i puste katalogi (iproute2)

Ależ proszę bardzo, nie złość się, po prostu Cię nie zrozumiałem :/

Kod:

debian# cat ./rules
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1


# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
else
CROSS= --build $(DEB_BUILD_GNU_TYPE)
endif



config.status: configure
    dh_testdir
    # Add here commands to configure the package.
ifneq "$(wildcard /usr/share/misc/config.sub)" ""
    cp -f /usr/share/misc/config.sub config.sub
endif
ifneq "$(wildcard /usr/share/misc/config.guess)" ""
    cp -f /usr/share/misc/config.guess config.guess
endif
    ./configure $(CROSS) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"


build: build-stamp

build-stamp:  config.status 
    dh_testdir

    # Add here commands to compile the package.
    $(MAKE)
    #docbook-to-man debian/iproute2.sgml > iproute2.1

    touch $@

clean: 
    dh_testdir
    dh_testroot
    rm -f build-stamp 

    # Add here commands to clean up after the build process.
    [ ! -f Makefile ] || $(MAKE) distclean
    rm -f config.sub config.guess

    dh_clean 

install: build
    dh_testdir
    dh_testroot
    dh_clean -k 
    dh_installdirs

    # Add here commands to install the package into debian/iproute2.
    $(MAKE) prefix=$(CURDIR)/debian/iproute2/usr install


# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
    dh_testdir
    dh_testroot
    dh_installchangelogs ChangeLog
    dh_installdocs
    dh_installexamples
#    dh_install
#    dh_installmenu
#    dh_installdebconf    
#    dh_installlogrotate
#    dh_installemacsen
#    dh_installpam
#    dh_installmime
#    dh_python
#    dh_installinit
#    dh_installcron
#    dh_installinfo
    dh_installman
    dh_link
    dh_strip
    dh_compress
    dh_fixperms
#    dh_perl
#    dh_makeshlibs
    dh_installdeb
    dh_shlibdeps
    dh_gencontrol
    dh_md5sums
    dh_builddeb

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install

EDIT: dh_install już próbowałem odkomentować i wtedy budować paczkę, jeśli o to chodzi...

Ostatnio edytowany przez artfrik (2009-02-27 18:51:55)

Offline

 

#8  2009-02-27 19:03:28

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Budowanie paczki deb i puste katalogi (iproute2)

rules wygląda  w porządku, pliki kopiuje do katalogu tymczasowego poprzez make install, powinny być w pakiecie

artfrik napisał(-a):

Kod:

/usr/src/debian/new/iproute2-2.6.26.arti/debian# dpkg-buildpackage

to polecenie należy wykonać w katalogu głównym źródeł, /usr/src/debian/new/iproute2-2.6.26.arti/ w tym przypadku
usuń katalog /usr/src/debian/new/iproute2-2.6.26.arti/debian/debian/, który chyba ci się utworzył


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#9  2009-02-27 19:13:28

  artfrik - Użytkownik

artfrik
Użytkownik
Zarejestrowany: 2009-02-27

Re: Budowanie paczki deb i puste katalogi (iproute2)

Tego katalogu akurat nie mam bo za każdym razem rozpakowuje oryginal, patchuje i wtedy cos zmieniam :)
Jest jeszcze jedna ciekawa rzecz, błędy pod koniec dpkg-buildpackage:

Kod:

dpkg-buildpackage
coś tam, coś tam i na końcu:
dpkg-deb: budowanie pakietu "iproute2" w "../iproute2_2.6.26.arti-1_i386.deb".
 signfile iproute2_2.6.26.arti-1.dsc
gpg: pominięty ,,root <artfrik@op.pl>'': brak klucza prywatnego
gpg: [stdin]: clearsign failed: brak klucza prywatnego

 dpkg-genchanges  >../iproute2_2.6.26.arti-1_i386.changes
dpkg-genchanges: dołączanie pełnych kodów źródłowych do wydania
dpkg-buildpackage: pełne wydanie (oryginalne źródła dołączone)
dpkg-buildpackage: ostrzeżenie: Błąd podpisywania plików .dsc i .changes

Ostatnio edytowany przez artfrik (2009-02-27 19:15:23)

Offline

 

#10  2009-02-27 19:15:39

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Budowanie paczki deb i puste katalogi (iproute2)

Chodzi o to, że pakiet nie zostanie podpisany kluczem GPG. Jeśli to nie ma być jakiś oficjalny pakiet, a jedynie dla samego siebie — olej.

Ostatnio edytowany przez azhag (2009-02-27 19:16:10)


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#11  2009-02-27 19:30:53

  artfrik - Użytkownik

artfrik
Użytkownik
Zarejestrowany: 2009-02-27

Re: Budowanie paczki deb i puste katalogi (iproute2)

Praktycznie tylko dla mnie, ewentualnie dla jakiegoś grona, tak jak to zrobił nasz kolega z forum siarka2107 i udostępnił na http://dimax.rootnode.net/2.6.26.8-arais2/, tylko, że to są pakiety do etcha i wszystko byłoby pięknie, gdyby nie zmiana biblioteki libdb4.3 na libdb4.5 i problem z iproute2 :/
Szkoda, że nie jestem w domu, zrobiłoby się tunelowanie i zajrzałbyś do mnie przez vnc, a później napisałoby się dla potomnych rozwiązanie :)

EDIT:
Napisałem do kolegi siarki link do wątku na pw, mam nadzieję, że się pojawi i pomoże...

Ostatnio edytowany przez artfrik (2009-02-27 19:37:21)

Offline

 

#12  2009-03-01 12:36:56

  mariaczi - Użytkownik

mariaczi
Użytkownik
Zarejestrowany: 2007-10-02

Re: Budowanie paczki deb i puste katalogi (iproute2)

artfrik czy probowales wg. mojej wskazowki? Przed momentem sciagnalem czyste zrobla iproute2-2.6.26, wykonałem

Kod:

./configure

nastepnie zmienilem w Makefile: z

Kod:

DESTDIR=/usr/

na

Kod:

DESTDIR=/pelna_sciezka_zrodel_iproute2/debian/iproute2

Po tym zabiegu wydalem

Kod:

dpkg-buildpackage -rfakeroot

Po zakonczonym bez bledow procesie kompilacji w katalogu powyzej "_pelna_sciezka_zrodel_iproute2_" ukazala sie paczka debianowa

Kod:

-rw-r--r--  1 root root 458242 2009-03-01 12:30 iproute2_2.6.26-1_i386.deb

nie pusta.
Podejrzewam, ze mozna chyba wywolac budowe paczki w jakis sposob z parametrem ale, ze kompilacja wymagana jest w sumie 1raz to zmiana na sztywno w Makefile w niczym mi nie przeszkadza.

Raz jeszcze powodzenia w zbudowaniu paczki!

Offline

 

#13  2009-03-01 20:28:38

  Ryszard - Piwo DUG

Ryszard
Piwo DUG
Skąd: Zadupia
Zarejestrowany: 2006-06-30

Re: Budowanie paczki deb i puste katalogi (iproute2)

echh ja tylko moge podsunąć takie coś jeśli koledze da do myślenia nie na temat ale http://www.programuj.com/artykuly/linux/makefile.php


http://img196.imageshack.us/img196/3770/freebsde.jpg

Offline

 

#14  2009-03-03 15:21:57

  artfrik - Użytkownik

artfrik
Użytkownik
Zarejestrowany: 2009-02-27

Re: Budowanie paczki deb i puste katalogi (iproute2)

Kolego mariaczi, zapomniałeś chyba o make lub dh_make, którą metodę wykorzystałeś??

EDIT:
Jednak musi być dh_make, bo inaczej nie będziemy mieli katalogu ../iproute2/debian/ , próbowałem mariaczi już wcześniej wg Twojej metody, niestety dostaje błąd dotyczący install, tak jak kilka postów wyżej, nieistotne czy buduję paczkę spatchowaną czy nie, dało radę jedynie zbudowanie paczki poprzez checkinstall, ale to jest jedynie półśrodek, chciałbym zbudować paczkę tak jak powinno się budować...

Ostatnio edytowany przez artfrik (2009-03-03 15:54:01)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)