www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

qt - qextserialport

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Linux, unix razprave
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 6.05
Kraj: Koroška-Mežica

PrispevekObjavljeno: Tor Apr 12, 2011 9:34 am    Naslov sporočila:  qt - qextserialport Odgovori s citatom

Lep pozdrav!
Izdelujem preprost grafični vmesnik za komunikacijo s serijskimi vrati računalnika, ki jo bom kasneje uporabil za gsm-terminal. Za to sem iz interneta snel knjižico qextserialport, jo prevedel in skopiral v direktorij mojega projekta. Spremenil sem tudi .pro datoteko, tako kot je treba. Pa mi pri prevajanju kljub temu javi napako:
Citiram:
/home/blaz/Dokumenti/GUI projekti/GSM_terminal-build-desktop/../../GUI_projekti/GSM_terminal/gsmterminal.cpp:25: error: undefined reference to `QextSerialPort::QextSerialPort(QString const&, PortSettings const&)'
in pa še eno napako:
Citiram:
:: error: collect2: ld returned 1 exit status


Moja procedura, ob kliku na gumb:
Koda:
void GSMterminal::on_pushButton_clicked()
{
    PortSettings nastavitve;
    nastavitve.BaudRate=BAUD9600;
    nastavitve.DataBits=DATA_8;
    nastavitve.Parity=PAR_NONE;
    nastavitve.FlowControl=FLOW_OFF;
    nastavitve.Timeout_Millisec=0;
    QextSerialPort* port=new QextSerialPort("ttyS0",nastavitve);

    if(port->open(QextSerialPort::ReadWrite))
    {
        qDebug("Serijska vrata so povezana!");
        port->close();
    }
    else
    {
        qDebug("Napaka v povezavi!\n");
    }

}


Uporabljam Kubuntu ter qt creator. Upam, da je kdo tukaj, ki se vsaj malo spozna, jaz se šele uvajam v ta framework..

_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
chaos
Član
Član



Pridružen-a: Sob 16 Sep 2006 22:12
Prispevkov: 1063
Aktiv.: 4.96
Kraj: Zagorje ob Savi

PrispevekObjavljeno: Tor Apr 12, 2011 10:00 am    Naslov sporočila:   Odgovori s citatom

Kaj ce bi pripel cel projekt, ce ni skrivnost? Takole na pamet ugotavljati gre samo z magicno kroglo.

Recimo da si pozabil vkljuciti header datoteko. Ali pa ne uporabljas (pravega) namespace scope-a. Mogoce si pozabil tvoj program linkati s primernimi objekti oz. knjiznicami?


LP!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 6.05
Kraj: Koroška-Mežica

PrispevekObjavljeno: Tor Apr 12, 2011 3:44 pm    Naslov sporočila:   Odgovori s citatom

Evo, tukaj celotna mapa projekta..


GSM_terminal.tar.gz
 Opis:

Download
 Ime datoteke:  GSM_terminal.tar.gz
 Velikost datoteke:  55.64 KB
 Downloadano:  9 krat


_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Benjamin
Član
Član



Pridružen-a: Tor 10 Jul 2007 11:23
Prispevkov: 116
Aktiv.: 0.57
Kraj: Trebnje, Ljubljana

PrispevekObjavljeno: Čet Apr 14, 2011 9:19 am    Naslov sporočila:   Odgovori s citatom

Živjo!

Namesto trenutno zakomentirane vrstice v projektu GSM_terminal.pro daj tole:
Koda:
LIBS += -lqextserialport

_________________
Cessna 152: "Flight Level Three Thousand, Seven Hundred"
Controller: "Roger, contact Houston Space Center"
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 6.05
Kraj: Koroška-Mežica

PrispevekObjavljeno: Ned Apr 17, 2011 12:25 pm    Naslov sporočila:   Odgovori s citatom

Kako se sploh vključi neko novo knjižico na linuxu za qt? Projekt, ki sem ga prenesel z interneta (qextserialport) sem zgradil s qmake in make. Dobil sem nov direktorij build, v katerem so neke .so datoteke. Kako zdaj od tu naprej, če mi lahko nekdo prosim pomaga, ker ne najdem nobenih navodil na internetu. Za windows so, ampak je malo drugače in se ne znajdem.
_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
chaos
Član
Član



Pridružen-a: Sob 16 Sep 2006 22:12
Prispevkov: 1063
Aktiv.: 4.96
Kraj: Zagorje ob Savi

PrispevekObjavljeno: Ned Apr 17, 2011 8:55 pm    Naslov sporočila:   Odgovori s citatom

Dobil si t.i. shared-object library (.so), ki se "poveže" - linka s tvojim programom run-time - to pomeni, da se naloži takrat, ko poženeš tvoj program. Druga vrsta knjižnic na linuxu so t.i. static libraries (.a) oz. statične knjižnice, ki se pa vključijo v tvoj program ob prevajanju (oz. bolj točno linkanju), in so potem del tvojega izvršnega programa.

Sicer ti je že Benjamin napisal, kaj moraš narediti, mogoče je treba samo še dodati pot, kjer se tvoja knjižnica nahaja. Najbolj pravilno seveda je, če svojo knjižnico pravilno namestiš - to se ponavadi naredi z "make install" - to preveri v dokumentaciji zraven te knjižnice.

Drugače je dober vir informacij qmake manual - tam notri boš našel opis možnosti, ki jih ponuja, ter načine uporabe.

LP!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 6.05
Kraj: Koroška-Mežica

PrispevekObjavljeno: Pon Apr 18, 2011 9:19 am    Naslov sporočila:   Odgovori s citatom

Zadevo sem rešil s spremenljivko LD_LIBRARY_PATH. Nekje sem zasledil, da to ni dobra ideja, ampak nič drugega mi ni pomagalo. Tudi z LIBS+=-L ter direktorij in -l qextserialport mi je dajalo iste rezultate. Ko sem zagnal export LD_LIBRARY_PATH in direktorij knjižice, je delovalo super. Knjižice sem tudi kopiral v /usr/lib in v /usr/local/lib ter v /lib ampak isti šmorn..
_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 6.05
Kraj: Koroška-Mežica

PrispevekObjavljeno: Pon Apr 18, 2011 11:58 am    Naslov sporočila:   Odgovori s citatom

Sem poskusil v šoli na windows 7 in deluje. Nastavil sem samo pot za mingw-32 ter spremenil .pro datoteko (dodal sem pot do knjižic). Zakaj na Linuxu ne deluje, če ne nastavim LD_LIBRARY_PATH?
_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
chaos
Član
Član



Pridružen-a: Sob 16 Sep 2006 22:12
Prispevkov: 1063
Aktiv.: 4.96
Kraj: Zagorje ob Savi

PrispevekObjavljeno: Pon Apr 18, 2011 6:55 pm    Naslov sporočila:   Odgovori s citatom

Če ne pride gora k Mohamedu ... Wink

http://www.faqs.org/docs/Linux-HOWTO/Program-Library-HOWTO.html#AEN115

LP!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 6.05
Kraj: Koroška-Mežica

PrispevekObjavljeno: Pon Apr 18, 2011 7:22 pm    Naslov sporočila:   Odgovori s citatom

Tudi že poskusil knjižico skopirati v /usr/lib in zagnati ldconfig ampak je na seznamu kasneje nisem našel (ukaz sem pognal z argumentom -v)..tako, da se očitno ni namestila..ne vem zakaj.
_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Linux, unix razprave Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 74 dni


Powered by phpBB © 2001, 2005 phpBB Group