Το εργαλείο lintian
Το Lintian μπορείτε να το τρέξετε είτε μέσω του debuild (όπου και καλείται αυτόματα στο τέλος της κατασκευής του πακέτου) ή χειροκίνητα καλώντας το με παράμετρο το παραγόμενο αρχείο .changes. Συνιστούμε, επίσης, τη χρήση της επιλογής -i/--info, για επιπλέον πληροφορίες σχετικά με κάθε προειδοποίηση/σφάλμα που βρίσκει το lintian.
$ lintian -i kalbum_0.8.0-1_i386.changes
W: kalbum: binary-without-manpage kalbum
N:
N: Each binary in /usr/bin, /usr/sbin, /bin, /sbin or /usr/games should
N: have a manual page
N:
N: Note, that though the `man' program has the capability to check for
N: several program names in the NAMES section, each of these programs
N: should have its own manual page (a symbolic link to the appropriate
N: manual page is sufficient) because other manual page viewers such as
N: xman or tkman don't support this.
N:
N: Refer to Policy Manual, section 12.1 for details.
N:
W: kalbum: desktop-file-in-wrong-dir usr/share/mimelnk/application/x-kalbum.desktop
N:
N: package contains a .desktop file in a non-standard directory.
N: According to the menu-spec draft on freedesktop.org, those .desktop
N: files that are intended to create a menu should be placed in
N: /usr/share/applications/.
N:
W: kalbum: desktop-file-in-wrong-dir usr/share/applnk/Applications/kalbum.desktop
W: kalbum: menu-item-needs-tag-has-unknown-value x11|wm /usr/lib/menu/kalbum:2
N:
N: The menu item has a line that has a needs= field with a strange value.
N: This may be intentional, but it's probably a typo that will make menu
N: ignore the line.
N:
W: kalbum: binary-or-shlib-defines-rpath ./usr/bin/kalbum /usr/lib:/usr/X11R6/lib
N:
N: The binary or shared library defines the `RPATH'. Usually this is a
N: bad thing. Most likely you will find a Makefile with a line like:
N: gcc test.o -o test -Wl,--rpath
N: or
N: gcc test.o -o test -R/usr/local/lib
N: Please contact debian-devel@lists.debian.org if you have questions
N: about this.
N:
Όσον αφορά την πρώτη προειδοποίηση (προειδοποίηση επειδή έχει το πρόθεμα W:, διαφορετικά θα είχε το πρόθεμα E:), το πακέτο δε συνοδεύεται από σελίδα οδηγιών (man page) το οποίο είναι παραβίαση της πολιτικής του Debian. Οκ, κανονικά πρέπει να φτιάξουμε μια τέτοια σελίδα, αλλά αυτή τη στιγμή βαριέμαι να το κάνω!!!
Η προειδοποίηση
W: kalbum: menu-item-needs-tag-has-unknown-value x11|wm /usr/lib/menu/kalbum:2
απλώς μας αναφέρει ότι ξεχάσαμε στο πεδίο needs="x11|wm" να επιλέξουμε ένα από τα δύο. Τις περισσότερες φορές για εφαρμογή που τρέχει κάτω από X11 αρκεί να αφήσουμε αυτό το πεδίο.
Τέλος, η προειδοποίηση:
W: kalbum: binary-or-shlib-defines-rpath ./usr/bin/kalbum /usr/lib:/usr/X11R6/lib
αν και φαίνεται πιο σοβαρή, στην πραγματικότητα φτιάχνεται πολύ εύκολα. Απλώς, το lintian αναγνώρισε ότι σε κάποιο binary ορίζεται ρητά η διαδρομή κάποιας βιβλιοθήκης (αυτό είναι λάθος στο Makefile). Ευτυχώς, μπορεί να λυθεί πολύ εύκολα, προσθέτοντας την επιλογή --disable-rpath στο σενάριο ./configure στο αρχείο rules.
Όσον αφορά τις άλλες δύο προειδοποιήσεις
W: kalbum: desktop-file-in-wrong-dir
Η πρώτη (για το αρχείο usr/share/mimelnk/application/x-kalbum.desktop) στην πραγματικότητα είναι false alarm και δε χρειάζεται να διορθωθεί. Η δεύτερη (για το αρχείο /usr/share/applnk/Applications/kalbum.desktop) είναι όντως σωστή και μπορεί να διορθωθεί με δύο βήματα:
- Ορισμό της μεταβλητής
$kde_appsdirστο αρχείοrulesπριν την εκτέλεση του./configureώστε τελικά να έχουμε:
kde_appsdir=\$${prefix}/share/applications CFLAGS="$(CFLAGS)" \
./configure --host=$(DEB_HOST_GNU_TYPE) \
--build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr \
--mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info \
--with-qt-includes=/usr/include/qt3 --disable-rpath
- Τροποποίηση του αρχείου
kalbum/Makefile.amκαι διόρθωση της διαδρομής στην οποία εγκαθίσταται το αρχείοkalbum.desktop:
$(mkinstalldirs) $(kde_appsdir)
$(INSTALL_DATA) $(srcdir)/kalbum.desktop \
$(kde_appsdir)/kalbum.desktop
Με αυτές τις αλλαγές θα έχουμε ένα σχεδόν καθαρό πακέτο ("lintian clean" όπως λέγεται), έτοιμο προς δοκιμή!
Active forum topics
- Wake up from suspend mode failed
- Οργάνωση στις μεταφράσεις των ελληνικών στο Debian.
- απορια σχετικα με nvidia440
- πρόβλημα εγκατάστασης nvidia driver GTS250.
- kernel 2.6.38 για squeeze
- Gnome3
- 2 μήνες σπασμένο το upgrade σε unstable [SOLVED]
- Οι χρήστες του Internet Explorer είναι χαζοί;
- Debian Lenny + Nvidia drivers
- εγκατασταση usb cosmote
New forum topics
Νέοι χρήστες
- kountp
- Adonthegreat
- giorgos_m
- prodromos
- airmaik
Οι πιο πρόσφατες καταχωρίσεις blog.
- Fosscomm 2012
- armhf officially into Debian!
- back from UDS/Linaro Connect...
- FTF is over, Linaro Interview
- straight from FTF 2011, San Antonio...
- Όσο μεγαλώνεις μαθαίνεις...
- Emdebian 2011 Sprint report, Genesi Europe store goes online...
- Θεσσαλονίκη - open source ERP workshop
- Χρήσιμο URL για Flash Cards και Linux filesystems
- Cambridge, UK, ARM HQ for Emdebian 2011 Sprint