Hallo zusammen.
heute wollte ich nach einem Update meines Debian testen, ob denn noch alles geht. Man ahnt es schon
Natürlich nicht.
PC/Geos wurde komplett kompiliert, aber der Schritt um das Target Environment zu bauen scheitert mit der Fehlermeldung:
Can't locate newgetopt.pl in @INC (@INC entries checked: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.40.1 /usr/local/share/perl/5.40.1 /usr/lib/x86_64-linux-gnu/perl5/5.40 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.40 /usr/share/perl/5.40 /usr/local/lib/site_perl)
Kurz nachgesehen... Stimmt. Datei ist nicht vorhanden.
Kurze Googlesuche...
Die Datei wird nicht mehr gepflegt (maintained) und ist daher nicht mehr dabei. Debian liefert aber auch Abhilfe in Form eines Wrappers, dessen genaue Details ich mir hier mal schenke.
Kopiert den unten eingefügten Code in eine Textdatei und speichert diese (z.B.) unter /etc/perl/newgetopt.pl. Das ist der erste Pfad der in der Fehlermeldung angezeigt wird, die anderen dort erwähnten Stellen sollten aber genauso funktionieren.
Hier dann jetzt der Code:
# $Id: newgetopt.pl,v 1.18 2001/09/21 13:34:59 jv Exp $
# This library is no longer being maintained, and is included for backward
# compatibility with Perl 4 programs which may require it.
# It is now just a wrapper around the Getopt::Long module.
#
# In particular, this should not be used as an example of modern Perl
# programming techniques.
#
# Suggested alternative: Getopt::Long
{ package newgetopt;
# Values for $order. See GNU getopt.c for details.
$REQUIRE_ORDER = 0;
$PERMUTE = 1;
$RETURN_IN_ORDER = 2;
# Handle POSIX compliancy.
if ( defined $ENV{"POSIXLY_CORRECT"} ) {
$autoabbrev = 0; # no automatic abbrev of options (???)
$getopt_compat = 0; # disallow '+' to start options
$option_start = "(--|-)";
$order = $REQUIRE_ORDER;
$bundling = 0;
$passthrough = 0;
}
else {
$autoabbrev = 1; # automatic abbrev of options
$getopt_compat = 1; # allow '+' to start options
$option_start = "(--|-|\\+)";
$order = $PERMUTE;
$bundling = 0;
$passthrough = 0;
}
# Other configurable settings.
$debug = 0; # for debugging
$ignorecase = 1; # ignore case when matching options
$argv_end = "--"; # don't change this!
}
use Getopt::Long;
################ Subroutines ################
sub NGetOpt {
$Getopt::Long::debug = $newgetopt::debug
if defined $newgetopt::debug;
$Getopt::Long::autoabbrev = $newgetopt::autoabbrev
if defined $newgetopt::autoabbrev;
$Getopt::Long::getopt_compat = $newgetopt::getopt_compat
if defined $newgetopt::getopt_compat;
$Getopt::Long::option_start = $newgetopt::option_start
if defined $newgetopt::option_start;
$Getopt::Long::order = $newgetopt::order
if defined $newgetopt::order;
$Getopt::Long::bundling = $newgetopt::bundling
if defined $newgetopt::bundling;
$Getopt::Long::ignorecase = $newgetopt::ignorecase
if defined $newgetopt::ignorecase;
$Getopt::Long::ignorecase = $newgetopt::ignorecase
if defined $newgetopt::ignorecase;
$Getopt::Long::passthrough = $newgetopt::passthrough
if defined $newgetopt::passthrough;
&GetOptions;
}
################ Package return ################
1;
################ End of newgetopt.pl ################
Display More