Qt linkování, C++ – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Qt linkování, C++ – C / C++ – Fórum – Programujte.comQt linkování, C++ – C / C++ – Fórum – Programujte.com

 

Laethnes0
Duch
18. 4. 2009   #1
-
0
-

Dobrý den,
do školy musím programovat v Qt a sám bych se to chtěl naučit, takže jsem se rozhodl, že si to nainstaluji do svého PC. AVŠAK, tato knihovna si usmyslela, že s ní nemůžu kompilovat věci normálně, ale pomocí jakéhosi "qmake". Takovéhle výmysly nemám rád (vlastně je nenávidím), protože používám povícero knihoven (mj. třeba SDL, irrlicht, ...) a každá si vymýšlí svoje nesmysly. Proto si je přizpůsobím (většinou i s překompilováním) tak, že stačí nastavit cesty (k include a lib), stačí nalinkovat nějaké knihovny a k výslednému exe (ano, pracuji ve Windows) připojím nějaké *.dll soubory.
Tak jsem to i udělal u Qt - nastavil jsem cesty kompilátoru k include, ke knihovnám, dal jsem kód překompilovat (zatím jen zkouším QtOpenGl example) a k projektu jsem dal přilinkovat všechny Qt knihovny. Avšak při kompilování se objevují 2 chyby:
jedna je "QtValidLicenseForActiveQtModule' does not name a type" na řádku s "QT_MODULE(ActiveQt) ". Když jej zakomentuji (Google), dokompiluje se to, ale pak to hodí chybu "undefined reference to 'vtable for GLObjectWindow'" a další. GLObjectWindow je třída projektu, dědí od QWidget a je v ní definován jen konstruktor. Podle hlášky vím, že je někde problém s třídou s virtuálními funkcemi (v mých projektech se objevovala pokud jsem definoval destruktor jako 'virtual ~Trida() = 0;', což nechápu proč, ale to už je jiná záležitost). Zároveň se objevují chyby jako "undefined reference to 'QAxFactory::isServer()'" což už ovšem vypadá jako nenalinkované knihovny. Avšak, jak jsem psal výše, linkuji všechny a navíc i "mingw32", "glu32" a "opengl32" v tomto pořadí před knihovnami Qt.
Takže bych se chtěl zeptat, v čem asi tak může být problém a jak to opravit. Na netu jsem se dočetl, že by tomu měl pomoct soubor "moc", ale nebyl jsem schopen vygooglit co to je a hlavně jak jej získat.

IDE: Code::Blocks (v tomhle dělám vlastně všechno, včetně rekompilací knihoven včetně těch, které nemají nějaký soubor s projektem, který by dokázal Code::Blocks otevřít. S příkazovou řádkou Windows si moc nerozumím, to už zvládám víc tu Linuxáckou (ne že bych měl bash rád, ale v Linuxu jsem již ze zdrojů kompiloval... trošku) )
kompilátor: mingw
Systém: Windows XP, 32 bit, SP 2
Qt: 4.5, LGPL

Nahlásit jako SPAM
IP: 88.102.104.–
Mega.Lama0
Stálý člen
19. 4. 2009   #2
-
0
-

Skús im poslať Feedback.
Ja mám tiež s ním trochu problémy pri linkovaní mi linker vypíše že príkaz -lphonnom neexistuje.

Nahlásit jako SPAM
IP: 85.135.241.–
http://www.youtube.com/watch?v=j_tWGyCK6Ds ...kto by veril,že je to otcov bratranec z druhého kolena?...
Laethnes0
Duch
20. 4. 2009   #3
-
0
-

Mno, ale to, co píšeš je zas něco jiného, ne (myslím tím, že to není chyba Qt)? Znamená to, že tam nikde nemáš knihovnu (.lib nebo .a) phonnom.

Nahlásit jako SPAM
IP: 158.196.47.–
Wizard0
Stálý člen
20. 4. 2009   #4
-
0
-

No co sa tyka toho gmake, ten nemozes len tak vyradit. Je na nom zalozeny cely slot-signal system a este par dalsich veci. Tvoje zdrojaky musis "pretiahnut" najprv cez ten gmake a az potom kompilovat.

Nahlásit jako SPAM
IP: 85.216.182.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 88 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý