Erreur du compilateur

Page d'accueil Forums OSPi Erreur du compilateur

Remarque : Les contributions sur le forum sont uniquement possibles pour les clients connectés ayant effectué au moins un achat. Veuillez vous connecter avec le compte client avec lequel vous avez passé commande.

5 matières de 1 à 5 (sur un total de 5)
  • Auteur
    Messages
  • #32193
    ww.strapetz
    Participant

    Bonjour,

    après réinstallation de Raspian Buster et après une mise à jour

    > sudo apt mise à jour && sudo apt mise à niveau

    par la suite

    > sudo apt raspi-config

    L'i2c est activé dans les interfaces.

    Instructions à partir de là : https://developer-blog.net/raspberry-pi-i2c-activate/ suivi et le cmd suivant montre alors ce qui suit (attention visible uniquement avec 1)

    > sudo i2cdetect -y 1
    0 1 2 3 4 5 6 7 8 9 a b c d e f
    00: — — — — — — — —
    10: — — — — — — — — — — — — — — — —
    20: — — — — — — — — — — — — — — — —
    30: — — — — — — — — — — — — — — — —
    40: — — — — — — — — 48 49 — — — — — —
    50: — — — — — — — — — — — — — — — —
    60: — — — — — — — — — — — — — — — —
    70: — — — — — — — —

    malheureusement montre

    > sudo ./updater.sh

    Compilation du firmware OSPi…
    trouvé ADS1115
    /usr/bin/ld : /tmp/ccY778qj.o : dans la fonction `flow_poll()' :
    /home/wilhelm/OpenSprinkler-Firmware/main.cpp:109 : référence non définie à `digitalRead(int)'
    /usr/bin/ld : /tmp/ccGGSA5l.o : dans la fonction `OpenSprinkler::begin()' :
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:944 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:946 : référence non définie à `digitalWrite(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:947 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:948 : référence non définie à `digitalWrite(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:950 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:959 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:977 : référence non définie à `digitalWrite(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:979 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:981 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1002 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1003 : référence non définie à `digitalWrite(int, unsigned char)'
    /usr/bin/ld : /tmp/ccGGSA5l.o : dans la fonction `OpenSprinkler::apply_all_station_bits()' :
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1311 : référence non définie à `digitalWrite(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1323 : référence non définie à `digitalWrite(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1325 : référence non définie à `digitalWrite(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1329 : référence non définie à `digitalWrite(int, unsigned char)'
    /usr/bin/ld: /tmp/ccGGSA5l.o:/home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1348: more undefined references to `digitalWrite(int, unsigned char)’ follow
    /usr/bin/ld : /tmp/ccGGSA5l.o : dans la fonction `OpenSprinkler::detect_binarysensor_status(unsigned long)' :
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1385 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1386 : référence non définie à `digitalRead(int)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1415 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1416 : référence non définie à `digitalRead(int)'
    /usr/bin/ld : /tmp/ccGGSA5l.o : dans la fonction `OpenSprinkler::detect_programswitch_status(unsigned long)' :
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1450 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1451 : référence non définie à `digitalRead(int)'
    /usr/bin/ld : /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1462 : référence non définie à `pinMode(int, unsigned char)'
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1463: undefined reference to `digitalRead(int)’
    /usr/bin/ld: /tmp/ccGGSA5l.o: in function `transmit_rfbit(unsigned long, unsigned long)’:
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1859: undefined reference to `gpio_write(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1861: undefined reference to `gpio_write(int, unsigned char)’
    /usr/bin/ld: /tmp/ccGGSA5l.o: in function `OpenSprinkler::switch_rfstation(RFStationData*, bool)’:
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1908: undefined reference to `gpio_fd_open(int, int)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1910: undefined reference to `gpio_fd_close(int)’
    /usr/bin/ld: /tmp/ccGGSA5l.o: in function `OpenSprinkler::switch_gpiostation(GPIOStationData*, bool)’:
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1925: undefined reference to `pinMode(int, unsigned char)’
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1927: undefined reference to `digitalWrite(int, unsigned char)’
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1929: undefined reference to `digitalWrite(int, unsigned char)’
    collect2: error: ld returned 1 exit status
    Terminé !
    ./updater.sh: line 5: /etc/init.d/OpenSprinkler.sh: No such file or directory

    Existe-t-il une solution à ce problème ?

    Merci et cordialement de Vienne

    Willie

    #32198
    Admin
    Maître des clés

    Bonjour,

    Voici la procédure recommandée :

    OpenSprinkler OSPI – Instructions

    Ou

    OSPi avec un nouveau noyau

     

    #32220
    ww.strapetz
    Participant

    Bonjour l'administrateur,

    J'ai fait ça le lendemain :

    • Réinstallation avec Debian bookworm x32
    • Puis i2c activé
    • Source GitHub chargée
    • OpenSprinkler peut maintenant être compilé
    • Je réponds à la question de savoir si le fichier init doit être créé par oui

    Cependant, après le premier démarrage, j'obtiens toujours le message suivant dans le navigateur :

    La demande était trop volumineuse

    une vérification de l'état sudo /etc/init.d/OpenSprinkler.sh montre :

    ● OpenSprinkler.service – LSB : Open Sprinkler Raspberry Pi
    Chargé : chargé (/etc/init.d/OpenSprinkler.sh ; généré)
    Actif : actif (en cours d'exécution) depuis le lundi 03/06/2024 21:13:20 CEST ; il y a 1min 45s
    Documents : man:systemd-sysv-generator(8)
    Processus : 1569 ExecStart=/etc/init.d/OpenSprinkler.sh start (code=exited, status=0/SUCCESS)
    Tâches : 1 (limite : 1556)
    Processeur : 574 ms
    Groupe C : /system.slice/OpenSprinkler.service
    └─1581 /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler

    03 juin 21:13:20 ospi systemd[1] : Démarrage d'OpenSprinkler.service – LSB : Open Sprinkler Raspberry Pi…
    03 juin 21:13:20 ospi systemd[1] : Démarrage d'OpenSprinkler.service - LSB : Open Sprinkler Raspberry Pi.

    Redémarrez uniquement avec sudo /etc/init.d/OpenSprinkler.sh

    Le portail Web OpenSprinkler est également accessible.

    Malheureusement, après chaque redémarrage, je reçois le message du navigateur : La demande était trop volumineuse

    Y a-t-il une solution pour cela aussi ?

    Merci et cordialement de Vienne

    Willie

    #32230
    Admin
    Maître des clés

    « La requête était trop volumineuse » dans le navigateur : Elle essaie d'accéder à la page via https, mais cela ne fonctionne pas. Utilisez http!

    Donc http://adresse-ip:8080

    Où l'adresse IP est l'adresse de votre Raspberry Pi.

    https ne fonctionne qu'avec un certificat valide utilisant un serveur Web/proxy.

    Cela a été décrit ici :
    https://OpenSprinklerShop.de/forums/topic/trick-nr-3-https-mit-ospi-und-raspberry-pi/

     

    #32290
    ww.strapetz
    Participant

    Bonjour,

    Problème : « La requête était trop volumineuse »

    résolu comme suit :

    Commencez par l'utilisateur root - cela élimine le besoin de spécifier sudo pour toutes les commandes !

    > sudo su

    ancien script d'initialisation déplacé

    > mv /etc/init.d/OpenSprinkler.sh /home/Name-User

    Téléchargez/compilez le logiciel OpensSprinkler dans le répertoire /root

    > apt-get install build-essentiel

    > cloner git https://github.com/OpenSprinkler/OpenSprinkler-Firmware.git

    > CD du firmware OpenSprinkler

    > ./build.sh ospi

    -> Se demander si OpenSprinkler.sh doit également être installé : y

    > redémarrer

    Maintenant ça marche 

    Cordialement de Vienne Willy

5 matières de 1 à 5 (sur un total de 5)
  • Connexion