Autor Thema: DoorBird InterCom System - 73_DoorBird.pm  (Gelesen 72774 mal)

Offline jbadlat

  • Jr. Member
  • **
  • Beiträge: 58
Antw:DoorBird InterCom System - 73_DoorBird.pm
« Antwort #405 am: 08 Februar 2022, 15:44:40 »
Ja, es lag an Jessie Version. Probiere es gerade mit "Stretch".

Scheint zu funktionieren ;-)

JB
FHEM 5.8, FB6490 (Cable), Raspi 2, Raspi 3, Homematic, MQTT, ESP8266

Offline Thyraz

  • Hero Member
  • *****
  • Beiträge: 1308
Antw:DoorBird InterCom System - 73_DoorBird.pm
« Antwort #406 am: 08 Februar 2022, 16:18:59 »
Hat das System, dass du auf veraltete Versionen setzt?

Dass du statt mit Stable nun schon bei einer Neuinstallation mit der vorvorletzten Version startest?  ;)
« Letzte Änderung: 08 Februar 2022, 22:04:10 von Thyraz »
Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Conbee II, Hue, Harmony, Solo4k, LaMetric, Echo, Sonos, Roborock S5, Nuki, Prusa Mini, Doorbird, ...

Offline snowsquirrel

  • New Member
  • *
  • Beiträge: 10
Antw:DoorBird InterCom System - 73_DoorBird.pm
« Antwort #407 am: 25 November 2022, 19:11:41 »
Hallo, ich habe mal wieder ein neues Problem mit Alien-Sodium. Ich habe meinen Server von Ubuntu 20.04 auf 22.04 aktualisiert. Davor lief Doorbird seit mehreren Jahren ohne Probleme. Mit nach dem update musste ich die Perl-Bibliotheken neu installieren, natürlich gemäß Wiki.

Der Schritt
install AJGB/Alien-Sodium-1.0.8.0.tar.gz
bricht mit
crypto_generichash/blake2/ref/blake2.h:118:5: error: size of array element is not a multiple of its alignmentab, Alien-Sodium wird also nicht fertig gebaut.

Eine Google-Suche führt auf diese Seite: https://github.com/matrix-org/sytest/issues/1114

Es scheint wohl ein bekanntes Problem zu sein, dass Alien-Sodium mit aktuellen GCC-Versionen ein Problem hat (in meinem Fall GCC 11.3, das bei Ubuntu 22.04 Standard ist). Außerdem verstehe ich diesen Beitrag so, dass Crypt::NaCl::Sodium nicht mehr gepflegt wird, also eine Aktualisierung für die neueren GCC-Versionen wohl nicht stattfindet...

Ich bin an dieser Stelle mit meinem Latein am Ende. Kann ich einen alten GCC parallel zum aktuellen installieren um Alien-Sodium zu kompilieren? Wie sage ich Perl, dass es den alten GCC verwenden soll? Oder was kann ich sonst noch versuchen?

Offline snowsquirrel

  • New Member
  • *
  • Beiträge: 10
Antw:DoorBird InterCom System - 73_DoorBird.pm
« Antwort #408 am: 28 November 2022, 12:07:08 »
Hallo, ich habe jetzt eine "Lösung" für mein Problem gefunden. Ich habe diese eine Bibliothek mit gcc-9 compiliert und es scheint zu funktionieren.

Vorgehen:
Laut dem makefile von Alien-Sodium wird zum kompilieren der Befehl "x86_64-linux-gnu-gcc" verwendet. Dieser Befehl ist bei mir (Ubuntu 22.04) ein link auf "gcc-11". Also habe ich diesen link einfach auf gcc-9 umgehängt:
cd /usr/bin
rm x86_64-linux-gnu-gcc
ln -s x86_64-linux-gnu-gcc-9 x86_64-linux-gnu-gcc

An dieser Stelle wieder mit dem der Anleitung aus dem Wiki https://wiki.fhem.de/wiki/DoorBird weitermachen:
sudo cpan
install AJGB/Alien-Sodium-1.0.8.0.tar.gz
exit

Danach wieder den link auf gcc-11 zurückhängen:
cd /usr/bin
rm x86_64-linux-gnu-gcc
ln -s gcc-11 x86_64-linux-gnu-gcc

Es scheint bei mir auf jeden Fall im Moment zu funktionieren. Mir kommt dieses Vorgehen irgendwie wie eine Holzhacker-Methode vor - vielleicht hat jemand einen Vorschlag, wie man das eleganter macht? Vermutlich kann man auch einfach Alien-Sodium-1.0.8.0.tar.gz entpacken, im Makefile direkt  x86_64-linux-gnu-gcc-9 angeben, neu verpacken und installieren... Habe ich aber nicht ausporbiert.

Offline Sailor

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2272
  • und es werden immer mehr...
Antw:DoorBird InterCom System - 73_DoorBird.pm
« Antwort #409 am: 28 November 2022, 16:27:40 »
Hallo snowsquirrel

Hallo, ich habe jetzt eine "Lösung" für mein Problem gefunden. Ich habe diese eine Bibliothek mit gcc-9 compiliert und es scheint zu funktionieren.

Vorgehen:
Laut dem makefile von Alien-Sodium wird zum kompilieren der Befehl "x86_64-linux-gnu-gcc" verwendet. Dieser Befehl ist bei mir (Ubuntu 22.04) ein link auf "gcc-11". Also habe ich diesen link einfach auf gcc-9 umgehängt:
cd /usr/bin
rm x86_64-linux-gnu-gcc
ln -s x86_64-linux-gnu-gcc-9 x86_64-linux-gnu-gcc

An dieser Stelle wieder mit dem der Anleitung aus dem Wiki https://wiki.fhem.de/wiki/DoorBird weitermachen:
sudo cpan
install AJGB/Alien-Sodium-1.0.8.0.tar.gz
exit

Danach wieder den link auf gcc-11 zurückhängen:
cd /usr/bin
rm x86_64-linux-gnu-gcc
ln -s gcc-11 x86_64-linux-gnu-gcc

Es scheint bei mir auf jeden Fall im Moment zu funktionieren. Mir kommt dieses Vorgehen irgendwie wie eine Holzhacker-Methode vor - vielleicht hat jemand einen Vorschlag, wie man das eleganter macht? Vermutlich kann man auch einfach Alien-Sodium-1.0.8.0.tar.gz entpacken, im Makefile direkt  x86_64-linux-gnu-gcc-9 angeben, neu verpacken und installieren... Habe ich aber nicht ausporbiert.

Ich gebe Dir ein virtuelles Bier aus, wenn du das ausprobierst.

Dann sorge ich dafür, das deine Schritt - für - Schritt - Anleitung in Wiki kommt.
Die Nachwelt und DoorBird - Nutzer werden dir dankbar sein!

Gruß
    Sailor
******************************
Man wird immer besser...

Offline marwal

  • Jr. Member
  • **
  • Beiträge: 66
Antw:DoorBird InterCom System - 73_DoorBird.pm
« Antwort #410 am: 19 Januar 2023, 16:08:25 »
[gelöst]

Hallo zusammen,

ich habe Probleme bei der Vorbereitung in Linux.
Bei folgendem Befehl wird schon nichts gefunden:

root@raspiFHEM:~/.cpan/build# find /root/.cpan/build/Crypt-NaCl-Sodium-1.0.8.0* -name Makefile
root@raspiFHEM:~/.cpan/build#

Der Ordner ist vorhanden, allerdings gibt es keinen Ordner Makefile, nur eine Makefile.PL
628687 4.0K drwxr-xr-x  5 root root 4.0K Jan 19 15:39 .
501287 4.0K drwxr-xr-x 42 root root 4.0K Jan 19 15:39 ..
628690    0 lrwxrwxrwx  1 root root   57 Jan 19 15:39 Alien-Sodium -> /usr/local/share/perl/5.28.1/auto/share/dist/Alien-Sodium
507669 4.0K -rw-r--r--  1 pi   pi   2.0K Dec 27  2015 Changes
507664 4.0K -rw-r--r--  1 pi   pi    993 Dec 27  2015 INSTALL
507585  20K -rw-r--r--  1 pi   pi    18K Dec 27  2015 LICENSE
507656 4.0K -rw-r--r--  1 pi   pi   1.7K Dec 27  2015 MANIFEST
507584  20K -rw-r--r--  1 pi   pi    20K Dec 27  2015 META.json
508653  16K -rw-r--r--  1 pi   pi    13K Dec 27  2015 META.yml
508654 8.0K -rw-r--r--  1 pi   pi   4.3K Dec 27  2015 Makefile.PL
507670  12K -rw-r--r--  1 pi   pi    11K Dec 27  2015 README
508652 144K -rw-r--r--  1 pi   pi   141K Dec 27  2015 Sodium.xs
508646 4.0K drwxr-xr-x  4 pi   pi   4.0K Dec 27  2015 lib
508655 172K -rw-r--r--  1 pi   pi   171K Dec 27  2015 ppport.h
627859 4.0K drwxr-xr-x  2 pi   pi   4.0K Dec 27  2015 t
507687 4.0K -rw-r--r--  1 pi   pi    522 Dec 27  2015 typemap
507586 4.0K drwxr-xr-x  4 pi   pi   4.0K Dec 27  2015 xt

Anschließend soll ja in den Ordner gewechselt werden und "make uninstall" ausgeführt werden.

Wenn ich diese Schritte überspringe, bekomme ich spätestens hier die nächsten Probleme:
root@raspiFHEM:~/.cpan/build/Crypt-NaCl-Sodium-1.0.8.0-0# cd /usr/local/lib/aarch64-linux-gnu/perl/5.28.1/auto/share/dist
-bash: cd: /usr/local/lib/aarch64-linux-gnu/perl/5.28.1/auto/share/dist: No such file or directory

Alle Schritte davor gingen ohne Probleme oder Fehlermeldung.
Kann hier jemand unterstützen?

Vielen Dank im Voraus!

[Edit]
Ich hatte auch das Problem mit Crypt-NaCl-Sodium - Nach ein Paar un-/ und installs hat es dann endlich funktioniert.
« Letzte Änderung: 20 Januar 2023, 15:50:40 von marwal »