Próbuję zbudować zmodyfikowany pakiet libdbusmenu. Buduje się poprawnie, jeśli zbuduję go lokalnie:
sudo apt-get build-dep libdbusmenu
wget https://launchpad.net/~a-j-buxton/+archive/dbusmenu/+files/libdbusmenu_12.10.3%2B13.10.20130913-0ubuntu2.1.diff.gz
wget https://launchpad.net/~a-j-buxton/+archive/dbusmenu/+files/libdbusmenu_12.10.3%2B13.10.20130913-0ubuntu2.1.dsc
wget https://launchpad.net/~a-j-buxton/+archive/dbusmenu/+files/libdbusmenu_12.10.3%2B13.10.20130913.orig.tar.gz
dpkg-source -x libdbusmenu*.dsc
cd libdbusmenu*
dpkg-buildpackage
Jednak w PPA jeden z testów nie działa, co powoduje niepowodzenie kompilacji. Rzeczywiste dane wyjściowe testu nie są zapisywane w dzienniku kompilacji:
Jak mogę rozwiązać ten problem?
Może sprowadzać się do dokładniejszego odtworzenia środowiska kompilacji używanego przez konstruktorów PPA. Jeśli tak, jak to zrobić?
Próbowałem budować przy użyciu chroota pbuildera - działa to poprawnie w moim systemie lokalnym.
Lintian wyświetla następujące ostrzeżenia na opakowaniu:
W: libdbusmenu source: quilt-build-dep-but-no-series-file
W: libdbusmenu source: patch-system-but-no-source-readme
W: libdbusmenu source: ancient-standards-version 3.9.2 (current is 3.9.4)
export VERBOSE=1
do,debian/rules
aby wymusić zapisywanie całego wyjścia zestawu testów w dzienniku kompilacji, gdy się nie powiedzie. Możesz spróbować użyć sbuild zamiast pbuilder, zobacz wiki.ubuntu.com/SimpleSbuild .Odpowiedzi:
Przeglądając dziennik, jest kilka ostrzeżeń, na które prawdopodobnie powinieneś spojrzeć, szczególnie jeśli nie dostaniesz ich na lokalną maszynę, ale myślę, że dużą wskazówką dotyczącą tego, co się dzieje, jest nazwa nieudanego testu: glib -wydarzenia.
zdarzenia prawie zawsze są związane z We / Wy, więc aby spróbować wymusić błąd na lokalnym komputerze, wyłącz XAUTHORITY i WYŚWIETLANIE, zamknij standardowe wejście lub przekieruj do / dev / null i przekieruj standardowe wyjście i błąd do pliku. nohup wykona przekierowanie za ciebie, ale nie dotknie środowiska, możesz też użyć at lub wsad zamiast nohup, co również oferuje przewagę polegającą na zmianie lidera sesji.
źródło