Wpis z mikrobloga

#raspberrypi #raspbian #linux #programowanie
Mój program łączy się z portem COM na Raspbianie i tworzy plik /var/lock/LCK..ttyS0. W razie niepoprawnego zamknięcia programu (a tak go wyłączam, po prostu "poweroff" przez SSH) ten plik zostaje i po resecie już się nie łączy z portem (a program jest w autostarcie), bo " Permission error while locking the device (ttyS0)". Nie bardzo mogę usuwać ten plik z programu, bo nie chcę mu dawać praw administratora. Czy te locki w /var/lock nie powinny znikać po zamknięciu systemu? Jak zrobić żeby to robiły?
  • 23
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@s_theCapt: nie wydaje mi się, żeby twórcy biblioteki przy używaniu strumieni, nie dali możliwości sprzątania po sobie. Proponuję przestudiować dokumentację biblioteki której używasz.
  • Odpowiedz
@s_theCapt: QSerialPort powinno samo sobie usunąć ten plik LCK.. po starcie aplikacji (jeśli wcześniej aplikacja została niepoprawnie zamknięta lub zabrakło prądu).

Sprawdziłem też mój stary projekt z QSerialPort (Qt 5.14) i jak zatrzymuję przez kill -9 a następnie odpalam to nie ma tego problemu i plik /run/lock/LCK.. jest usuwany automatycznie przez QSerialPort(a właściwie przez QLockFile z którego korzysta QSerialPort) przy próbie otwarcia tty...

@s_theCapt: czy występuje ten sam
  • Odpowiedz