Wpis z mikrobloga

#cpp #qt #debian #linux

QSerialPort ponoć jest częścią Qt od 5.1.
QtCreator mówi:

Qt Creator 4.2.0

Bazujący na Qt 5.7.1 (GCC 6.3.0 20161229, 32 bitowy)


Jednak coś jest nie tak.
Rozumiem, robię include a nie ma fizycznie pliku, no ale przecież patrz wyżej...
( ͡° ʖ̯ ͡°)

mainwindow.h:6: błąd: QSerialPort: No such file or directory
#include
  • 20
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@jk64: w zasadzie to dopiero zacząłem pisać... Mam czysty projekt i zrobiłem tylko tego includa.
I taki numer mi już odstawił.
Bez #include wszystko ładnie się kompiluje.
  • Odpowiedz
@defoxe: Sprawdź czy zadziała . Wciśnij prawym na projekt -> clean -> run qmake. Możesz ewentualnie spróbować w CMake postawić projekt, co już jest proste od czasów qt5. W Compile output qmake możesz też sprawdzić czy -lQt5SerialPort jest linkowane.
  • Odpowiedz
@jk64: to nie działa...
Natomiast mam coś takiego: /usr/include/qt4
qt 5 nie ma w include a jak mniemam - być powinno.

Podłączyłem sobie #include i on właśnie z tamtej lokalizacji jest brany.
  • Odpowiedz
Jeśli Debian Trusty


@jk64: Stretch

Ale coś tu jest ostro popierniczone. Ja to jednak chyba wszystko wypiernicze i muszę pobrać bezpośrednio od Qt, bo to chyba z repozytoriów było...
  • Odpowiedz
@sylwke3100: no niby trzeba go oddzielnie "dodać" ale od wersji 5.1 już jest dostarczany.
Niestety wychodzi na to, że mam tu niezły rozpiernicz...
Trzeba to ogarnąć.
  • Odpowiedz
@sylwke3100: Zasysam od Qt wszystko, na moim laptopie mi wszystko działa... Na stacjonarnym niestety qt z repozytorium robi problemy... Dodałem też tą paczkę ale qt4 tu siedzi, jednocześnie widzę tu coś z qt5...
  • Odpowiedz
@defoxe: QtCreator niema nic do tego. Najpierw powiedz jaki toolkit jest wybrany.
Jeżeli masz jakiś wybrany co niema modułu to qmake powinien krzyczeć że go nie zna:

:-1: błąd: Unknown module(s) in QT: serialport

Pamiętaj też że po zmianie pliku pro, musisz ręcznie wybrać uruchom qmake.

  • Odpowiedz
@TheDoom: A masz ten moduł dostępny do krosskompilacji? Sam krosskompilowałeś Qt na Rpi?
A ten link to już w ogóle nieporozumienie, gość ma lokalnego Qt a doinstalował bibliotekę do systemu więc się niema co dziwić ze mu nie działało.
  • Odpowiedz
@lionbest: założyłem osobny wpis, ale ogólnie to problem polega na tym właśnie, że ten moduł u mnie nie jest dostępny do crossa. rozumiem swój problem, ale nie wiem jak go naprawić.

nie bardzo wiem, jak zainstalować moduł do kompilacji crossowej - próbowałem pobrać projekt QtSerialPort i robić to co w tym linku w sekcji Build & Install, ale make się wywalało:
https://wiki.qt.io/Qt_Serial_Port

co to znaczy czy sam krosskompilowałem? Podążałem tutorialami
  • Odpowiedz
@lionbest: czyli żeby korzystać z QtSerialPort, potrzebuję i tak linijki QT += serialport? i to zadziała tylko gdy uwzględniłem serialport już etapie krosskompilacji (na etapie .configure dla qtbase, make i make install)?
  • Odpowiedz