Compiler fejl

Hjemmeside Fora OSPi Compiler fejl

Hinweis: Beiträge im Forum sind nur für angemeldete Kunden mit mindestens einem Kauf möglich. Bitte melde dich mit dem Kundenkonto an, über das du bestellt hast.

Viser 5 indlæg - 1 til 5 (af 5 i alt)
  • Author
    Indlæg
  • #32193
    ww.strapetz
    Participant

    Hej,

    efter geninstallation af Raspian Buster og efter en opdatering

    > sudo apt opdatering && sudo apt opgradering

    derefter

    > sudo apt raspi-config

    i2c er aktiveret i interfaces.

    Instruktioner derfra: https://developer-blog.net/raspberry-pi-i2c-activate/ fulgt og følgende cmd viser derefter følgende (opmærksomhed er kun synlig med 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: — — — — — — — —

    viser desværre

    > sudo ./updater.sh

    Kompilerer OSPi-firmware...
    found ADS1115
    /usr/bin/ld: /tmp/ccY778qj.o: in function `flow_poll()’:
    /home/wilhelm/OpenSprinkler-Firmware/main.cpp:109: undefined reference to `digitalRead(int)’
    /usr/bin/ld: /tmp/ccGGSA5l.o: in function `OpenSprinkler::begin()’:
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:944: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:946: undefined reference to `digitalWrite(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:947: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:948: undefined reference to `digitalWrite(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:950: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:959: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:977: undefined reference to `digitalWrite(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:979: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:981: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1002: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1003: undefined reference to `digitalWrite(int, unsigned char)’
    /usr/bin/ld: /tmp/ccGGSA5l.o: in function `OpenSprinkler::apply_all_station_bits()’:
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1311: undefined reference to `digitalWrite(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1323: undefined reference to `digitalWrite(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1325: undefined reference to `digitalWrite(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1329: undefined reference to `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: in function `OpenSprinkler::detect_binarysensor_status(unsigned long)’:
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1385: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1386: undefined reference to `digitalRead(int)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1415: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1416: undefined reference to `digitalRead(int)’
    /usr/bin/ld: /tmp/ccGGSA5l.o: in function `OpenSprinkler::detect_programswitch_status(unsigned long)’:
    /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1450: undefined reference to `pinMode(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1451: undefined reference to `digitalRead(int)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1462: undefined reference to `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)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1927: undefined reference to `digitalWrite(int, unsigned char)’
    /usr/bin/ld: /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler.cpp:1929: undefined reference to `digitalWrite(int, unsigned char)’
    collect2: error: ld returned 1 exit status
    Done!
    ./updater.sh: line 5: /etc/init.d/OpenSprinkler.sh: No such file or directory

    Gibt es dafür eine Lösung?

    Tak og venlig hilsen fra Wien

    Willy

    #32198
    Admin
    Keymaster

    Hej,

    her er den anbefalede fremgangsmåde:

    OpenSprinkler OSPI – Instruktioner

    Hhv.

    OSPi med ny kerne

     

    #32220
    ww.strapetz
    Participant

    Hej admin,

    Jeg gjorde dette dagen efter:

    • Geninstallation med Debian bookworm x32
    • Så blev i2c aktiveret
    • GitHub-kilden er indlæst
    • OpenSprinkler kan nu kompileres
    • Spørgsmålet om init-filen skal oprettes svarer jeg med ja

    Men efter den første start får jeg altid følgende besked i browseren:

    Anmodningen var for stor

    en kontrol af sudo /etc/init.d/OpenSprinkler.sh status viser:

    ● OpenSprinkler.service – LSB: Open Sprinkler Raspberry Pi
    Indlæst: indlæst (/etc/init.d/OpenSprinkler.sh; genereret)
    Aktiv: aktiv (kører) siden man 2024-06-03 21:13:20 CEST; 1 min 45 s siden
    Dokumenter: man:systemd-sysv-generator(8)
    Proces: 1569 ExecStart=/etc/init.d/OpenSprinkler.sh start (kode=afsluttet, status=0/SUCCES)
    Opgaver: 1 (grænse: 1556)
    CPU: 574ms
    CGroup: /system.slice/OpenSprinkler.service
    └─1581 /home/wilhelm/OpenSprinkler-Firmware/OpenSprinkler

    Jun 03 21:13:20 ospi systemd[1]: Starter OpenSprinkler.service – LSB: Open Sprinkler Raspberry Pi...
    Jun 03 21:13:20 ospi systemd[1]: Startet OpenSprinkler.service - LSB: Open Sprinkler Raspberry Pi.

    Genstart kun med sudo /etc/init.d/OpenSprinkler.sh

    OpenSprinkler WebPortal kan også tilgås.

    Desværre får jeg efter hver genstart browsermeddelelsen: Anmodningen var for stor

    Er der også en løsning på dette?

    Tak og venlig hilsen fra Wien

    Willy

    #32230
    Admin
    Keymaster

    “The request was to large” i browseren: Du forsøger at få adgang til siden via https, det virker ikke. Brug http!

    Altså http://ip-adresse:8080

    Hvor ip-adresse er adressen på din Raspberry Pi.

    https virker kun med et gyldigt certifikat ved hjælp af en webserver / proxy.

    Her blev det beskrevet:
    https://opensprinklershop.de/forums/topic/trick-nr-3-https-mit-ospi-und-raspberry-pi/

     

    #32290
    ww.strapetz
    Participant

    Hej,

    Problem: "Anmodningen var for stor"

    løst som følger:

    Start med root-bruger - dette eliminerer behovet for at angive sudo for alle kommandoer!

    > sudo su

    flyttet gammelt init-script

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

    Download/kompilér OpensSprinkler-softwaren i /root-mappen

    > apt-get install build-essential

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

    > cd OpenSprinkler firmware

    > ./build.sh ospi

    –> Spørgsmål om OpenSprinkler.sh også skal installeres: y

    > genstart

    Nu virker det 

    Venlig hilsen fra Wien Willy

Viser 5 indlæg - 1 til 5 (af 5 i alt)
  • Du skal være logget ind for at svare på dette emne.