Kurzfassung: Eine Perl-basierte Anwendung stürzt ab mit der Meldung "Ungültiger Maschinenbefehl" (Illegal Instruction). Die Stelle sieht so aus:
Das System ist ein Raspberry Pi mit Raspbian, alle Pakete sind aktuell. Die besagte Anwendung ist ddclient.
Langversion: Ich wollte ddclient nutzen, das funktionierte aber nicht (ohne jegliche Fehlermeldung). Erst ein Start mit
brachte die Meldung "Ungültiger Maschinenbefehl" hervor. Im syslog usw. steht nichts darüber. Googlen nach "Illegal Instruction" förderte zutage, dass es die Meldung bei inkompatibler Architektur auftritt. Die Perl- und ddclient-Pakete stammen jedoch aus den offiziellen Raspbian-Repositories. Für das Debugging in Perl habe ich dann libdevel-trace-perl installiert und dabei kam obige Ausgabe zustande. Ich habe die Pakete bereits mehrfach neu installiert, sowohl Perl als auch ddclient. Selbst erstellt habe ich sie bisher noch nicht.
Frage 1: Wie bekomme ich ddclient zum Laufen? Was kann ich da noch machen?
Frage 2: Wenn ddclient sich nicht überreden lässt, welche Alternativen gibt es?
Frage 3: Die Stelle in ddclient an der das auftritt ist ziemlich spät (in geturl()), somit scheint ein Großteil von Perl zu funktionieren. Wie kann sowas dann eigentlich passieren?
Code:
>> /usr/share/perl/5.14/XSLoader.pm:60: @DynaLoader::dl_require_symbols = ($bootname);
>> /usr/share/perl/5.14/XSLoader.pm:62: my $boot_symbol_ref;
>> /usr/share/perl/5.14/XSLoader.pm:71: my $libref = dl_load_file($file, 0) or do {
Ungültiger Maschinenbefehl
Langversion: Ich wollte ddclient nutzen, das funktionierte aber nicht (ohne jegliche Fehlermeldung). Erst ein Start mit
Code:
ddclient -daemon=0 -noquiet -debug -verbose
Frage 1: Wie bekomme ich ddclient zum Laufen? Was kann ich da noch machen?
Frage 2: Wenn ddclient sich nicht überreden lässt, welche Alternativen gibt es?
Frage 3: Die Stelle in ddclient an der das auftritt ist ziemlich spät (in geturl()), somit scheint ein Großteil von Perl zu funktionieren. Wie kann sowas dann eigentlich passieren?