Bug#598546: lintian: unsubstituted #!perl
Package: lintian
Version: 2.4.3
Severity: wishlist
In a perl script a #!perl is supposed to be substituted by
ExtUtils::MakeMaker, becoming the installed /usr/bin/perl,
/usr/local/bin/perl, or whatever.
Lintian could helpfully report when an executable script contains
#!perl, since it won't run.
For example, without picking on anyone, libbit-vector-perl has
/usr/share/doc/libbit-vector-perl/examples/primes.pl
which is executable (mode 755) but has
#!perl -w
so attempting to run it as ./primes.pl gets an error
-bash: ./primes.pl: perl: bad interpreter: No such file or directory
I think any file with execute bits set and which starts with #!perl
could be reported, no matter what directory it's in, because it cannot
in fact be executed.
I would go further in fact and report /usr/share/doc/*/examples/* files
which start #!perl too, executable or not, as an apparently
unsubstituted MakeMaker form which on a Debian system really ought to be
#!/usr/bin/perl.
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.32-5-486
Locale: LANG=en_AU, LC_CTYPE=en_AU (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/dash
Versions of packages lintian depends on:
ii binutils 2.20.1-11 The GNU assembler, linker and bina
ii diffstat 1.53-1 produces graph of changes introduc
ii dpkg-dev 1.15.8.5 Debian package development tools
ii file 5.04-5 Determines file type using "magic"
ii gettext 0.18.1.1-3 GNU Internationalization utilities
ii intltool-debian 0.35.0+20060710.1 Help i18n of RFC822 compliant conf
ii libapt-pkg-perl 0.1.24+b1 Perl interface to libapt-pkg
ii libclass-accessor-perl 0.34-1 Perl module that automatically gen
ii libdigest-sha-perl 5.48-1 Perl extension for SHA-1/224/256/3
ii libipc-run-perl 0.89-1 Perl module for running processes
ii libparse-debianchangel 1.1.1-2.1 parse Debian changelogs and output
ii libtimedate-perl 1.2000-1 collection of modules to manipulat
ii liburi-perl 1.55-1 module to manipulate and access UR
ii locales 2.11.2-2 Embedded GNU C Library: National L
ii man-db 2.5.7-4 on-line manual pager
ii perl [libdigest-sha-pe 5.10.1-14 Larry Wall's Practical Extraction
lintian recommends no packages.
Versions of packages lintian suggests:
pn binutils-multiarch <none> (no description available)
ii libtext-template-perl 1.45-1 Text::Template perl module
ii man-db 2.5.7-4 on-line manual pager
-- no debconf information
Reply to: