FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: riker1 am 05 November 2019, 16:46:23

Titel: XSLoader.pm: Can't locate object method "tid" via package "threads" CPAN?
Beitrag von: riker1 am 05 November 2019, 16:46:23
Hallo

leider noch eine Fehlermeldung ohne ausreichend hinweise fuer mich:
XSLoader.pm: Can't locate object method "tid" via package "threads"
Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
2019.11.05 14:08:08.747 1: PERL ERROR: Can't use an undefined value as an ARRAY reference at fhem.pl line 575.

Mehr steht das zum Log nicht.

Wo kann ich da weiterforschen?

Danke T
Titel: Antw:Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
Beitrag von: amenomade am 05 November 2019, 18:59:56
attr stacktrace auf global setzen, und wieder die Log posten
Titel: Antw:Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
Beitrag von: riker1 am 05 November 2019, 19:26:31
ok, werde ich mal machen. Danke

also habe es nun so gesetzt:

attr global stacktrace 1

so ok?
Titel: Antw:Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
Beitrag von: riker1 am 06 November 2019, 10:31:25
Hallo,

so nun sehe ich leider auch nicht mehr....oder?

2019.11.06 10:25:34.456 1: PERL ERROR: Can't use an undefined value as an ARRAY reference at fhem.pl line 575.

2019.11.06 10:25:34.457 1: stacktrace:
2019.11.06 10:25:34.457 1:     main::__ANON__                      called by fhem.pl (575)
2019.11.06 10:25:34.457 1:     (eval)                              called by fhem.pl (575)
2019.11.06 10:25:34.488 1: Including fhem.cfg
2019.11.06 10:25:34.495 1: Including ./fhemtr/includes/Telegram_bot.cfg
2019.11.06 10:25:34.740 3: TelegramBot_Define TR_BOT: called
2019.11.06 10:25:34.964 1: PERL ERROR: Can't locate object method "tid" via package "threads" at /usr/share/perl/5.26/XSLoader.pm line 114.

2019.11.06 10:25:34.964 1: stacktrace:
2019.11.06 10:25:34.964 1:     main::__ANON__                      called by /usr/share/perl/5.26/XSLoader.pm (114)
2019.11.06 10:25:34.964 1:     (eval)                              called by /usr/share/perl/5.26/XSLoader.pm (114)
2019.11.06 10:25:34.964 1:     XSLoader::load                      called by /usr/lib/x86_64-linux-gnu/perl5/5.26/Net/SSLeay.pm (439)
2019.11.06 10:25:34.964 1:     (eval)                              called by /usr/lib/x86_64-linux-gnu/perl5/5.26/Net/SSLeay.pm (441)
2019.11.06 10:25:34.964 1:     (eval)                              called by /usr/share/perl5/IO/Socket/SSL.pm (19)
2019.11.06 10:25:34.964 1:     IO::Socket::SSL::BEGIN              called by /usr/lib/x86_64-linux-gnu/perl5/5.26/Net/SSLeay.pm (0)
2019.11.06 10:25:34.964 1:     (eval)                              called by /usr/lib/x86_64-linux-gnu/perl5/5.26/Net/SSLeay.pm (0)
2019.11.06 10:25:34.964 1:     (eval)                              called by (eval 23) (1)
2019.11.06 10:25:34.965 1:     main::BEGIN                         called by /usr/lib/x86_64-linux-gnu/perl5/5.26/Net/SSLeay.pm (0)
2019.11.06 10:25:34.965 1:     (eval)                              called by /usr/lib/x86_64-linux-gnu/perl5/5.26/Net/SSLeay.pm (0)
2019.11.06 10:25:34.965 1:     (eval)                              called by FHEM/HttpUtils.pm (490)
2019.11.06 10:25:34.965 1:     main::HttpUtils_Connect2            called by FHEM/HttpUtils.pm (479)
2019.11.06 10:25:34.965 1:     main::HttpUtils_Connect             called by FHEM/HttpUtils.pm (935)
2019.11.06 10:25:34.965 1:     main::HttpUtils_BlockingGet         called by ./FHEM/50_TelegramBot.pm (1623)
2019.11.06 10:25:34.965 1:     main::TelegramBot_DoUrlCommand      called by ./FHEM/50_TelegramBot.pm (2848)
2019.11.06 10:25:34.965 1:     main::TelegramBot_Setup             called by ./FHEM/50_TelegramBot.pm (400)
2019.11.06 10:25:34.965 1:     main::TelegramBot_Define            called by fhem.pl (3754)
2019.11.06 10:25:34.965 1:     main::CallFn                        called by fhem.pl (2077)
2019.11.06 10:25:34.965 1:     main::CommandDefine                 called by fhem.pl (1242)
2019.11.06 10:25:34.965 1:     main::AnalyzeCommand                called by fhem.pl (1095)
2019.11.06 10:25:34.965 1:     main::AnalyzeCommandChain           called by fhem.pl (1380)
2019.11.06 10:25:34.965 1:     main::CommandInclude                called by fhem.pl (1242)
2019.11.06 10:25:34.965 1:     main::AnalyzeCommand                called by fhem.pl (1095)
2019.11.06 10:25:34.965 1:     main::AnalyzeCommandChain           called by fhem.pl (1380)
2019.11.06 10:25:34.965 1:     main::CommandInclude                called by fhem.pl (607)
2019.11.06 10:25:35.242 3: telnetPort7072: port 7072 opened


Danke fürs checken.

VG T
Titel: Antw:Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
Beitrag von: Beta-User am 06 November 2019, 11:03:27
Doch schon, oder? Aufrufende Funktion ist vermutlich TelegramBot_Define.
Da der Code des Moduls (jedenfalls beim kurzen Überfliegen desselben) nicht zu prüfen scheint, ob alle erforderlichen Module da sind, ist es naheliegend, dass du ein Perl-Modul nicht installiert haben könntest.

Wie sieht es damit aus (commandref):
Zitat
This module requires the perl JSON module.
Please install the module (e.g. with sudo apt-get install libjson-perl) or the correct method for the underlying platform/system.
Titel: Antw:Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
Beitrag von: riker1 am 06 November 2019, 11:35:49
Hi

merkwürdigerweise libjson is already newest....

Ich nutze Ubuntu muss ich da etwas anderes installieren?

Nutze perl 5.26.

Danke t
Titel: Antw:Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
Beitrag von: Beta-User am 06 November 2019, 11:48:55
Puh, die cref hatte ich nur überflogen, aber das schien die einzige Abhängigkeit gewesen zu sein (und ist bei dir auch via apt-get korrekt installiert; ubuntu oder Debian dürften hier keine signifikanten Unterschiede zu Raspbian aufweisen).

Würde dazu tendieren, vorab nochmal die betreffende T-Bot-Definition mal zu checken, ob die ok ist, und wenn ja, das ganze in den für TelegramBot passenden Forumsbereich zu verschieben (unter etwas geändertem Titel: "Vermutlich TelegramBot: Can't use...").
Titel: Antw:Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
Beitrag von: riker1 am 06 November 2019, 12:07:03
Hallo,

ok Danke.

der Bot läuft eigentlich.

wie kann ich denn das ticket verschieben?
Titel: Antw:Log Fehlermeldung Array: Can't use an undefined value as an ARRAY ....
Beitrag von: Beta-User am 06 November 2019, 13:20:34
Verschieben: https://forum.fhem.de/index.php/topic,68904.0.html

Mit der Fehlermeldung habe ich auch noch folgendes gefunden:
https://stackoverflow.com/questions/57097299/xsloader-pm-error-cant-locate-object-method-tid-via-package-threads-at-u

Das deutet darauf hin, dass es nichts mit einem speziellen FHEM-Modul zu tun hat, sondern vielleicht mit diesem Perl-Modul.
Allerdings bin ich nicht der cpan-Spezialist und will jetzt nichts vorschlagen, was eventuell Quatsch ist, schon gleich nicht auf Basis einer für mich eher verwirrenden Diskussion dort in dem verlinkten Thread...

Würde jetzt doch eher erst mal hier bleiben, aber den Threadtitel ändern (auf den Fehlercode), z.B.
XSLoader.pm: Can't locate object method "tid" via package "threads"

Dazu dann bitte noch weitere Angaben zu OS (Version, Perl steht ja schon hier, aber wiederholen kann auch nicht schaden) und  Plattform. Wäre noch gut, wenn du die Version von XSLoader rausbekämst.

(Nein, ich weiß nicht, wie es geht und müßte auch eine SuFu nutzen  ::) .)
Titel: Antw:XSLoader.pm: Can't locate object method "tid" via package "threads" CPAN?
Beitrag von: riker1 am 06 November 2019, 14:35:19
Hi
einen solchen Threat hatte ich schon aufgemacht und nun verlinkt.

Perl: 5.26
libjsan-perl ist aktuel
Ubuntu 18.04
XSLoader: 0.27 scheinbar

vorher: sudo    cpanm Devel::Modlist

perl -d:Modlist  /opt/fhem/fhem.pl

Danke

https://forum.fhem.de/index.php/topic,105086.msg990204.html#msg990204 (https://forum.fhem.de/index.php/topic,105086.msg990204.html#msg990204)