.[ ČeskéHry.cz ].
Qt začátky

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> C / C++
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Val



Založen: 18. 06. 2013
Příspěvky: 19

PříspěvekZaslal: 18. červen 2013, 19:55:18    Předmět: Qt začátky Odpovědět s citátem

Chlapi používáte někdo Qt (pro vytváření aplikací v C++ s GUI)?
Člověk si to snadno nainstaluje (Qt5 na Windows 7), spustí pěkně vypadající Qt Creator a už ťuká aplikaci, která jde z IDE spustit a dělá co má. Krása.
Problém ovšem nastane, když by chtěl nově vytvořenou aplikaci distribuovat. Člověk si najde exáč, zjistí jaké potřebuje DLL tak je k němu přikopíruje (jedná se o úplně základní aplikaci generovanou IDE - zobrazí se okno a v něm nápis "Hello world", přesto potřebuje 14 dll, které zabírají 50MB. WTF? proč to třeba potřebuje Qt5Sql.dll nebo Qt5Network.dll?), přesto to stále nefunguje - ovšem žádnou chybovou hlášku to nehodí. Když člověk nakopíruje exáč aplikace přímo do adresáře Qt/bin tak se tento spustí, zobrazí okno - ovšem bez nápisu "Hello world".
Člověk je z toho trochu zmatený. Pokud by někdo vrhl světlo na tyto záhady, bude rád.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Houp



Založen: 28. 07. 2007
Příspěvky: 672

PříspěvekZaslal: 18. červen 2013, 20:07:23    Předmět: Odpovědět s citátem

Jsi si jistý, že potřebuješ ta dll všechna? Co jsem dělal aplikaci v Qt, tak mi stačilo ji distribuovat jen s QtCore.dll a QtGui.dll a vše fungovalo. (týká se to Qt 4.8, ne 5, ale je mi podezřelé, že by se to tak změnilo) Na druhou stranu nevíme, co všechno si tam použil.
_________________
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
uiii



Založen: 12. 08. 2007
Příspěvky: 251

PříspěvekZaslal: 18. červen 2013, 20:45:13    Předmět: Odpovědět s citátem

Čau, nezkoumal jsem to jen jsem zkusil zagooglit (qt5 deploy), nevím jistě zda to obsahuje řešení tvé situace, ale snad to pomůže:

http://qt-project.org/doc/qt-5.0/qtdoc/deployment.html
http://qt-project.org/doc/qt-5.0/qtdoc/deployment-windows.html
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Krolli



Založen: 12. 05. 2013
Příspěvky: 13

PříspěvekZaslal: 18. červen 2013, 21:05:47    Předmět: Odpovědět s citátem

Mozes skusit pouzit Dependency Walker, ktory ti zisti vsetky DLL ktore tvoj program potrebuje pre spustenie (neuvedie DLL nacitane pocas runtime ako pluginy, ale to asi nepotrebujes). Inak s distribuciou Qt programov vela skusenosti nemam, akurat som s tym obcas experimentoval. Este mozes skusit spustat z prikazoveho riadku, mozno to tam vypise nieco uzitocne.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Val



Založen: 18. 06. 2013
Příspěvky: 19

PříspěvekZaslal: 18. červen 2013, 21:23:23    Předmět: Odpovědět s citátem

Houp: Pro vygenerování aplikace jsem použil File->New->Applications->Qt Quick1 (build in elements). A dále jsem ji neupravoval. Je možný, že tam je zbitečně nastaveno použití dll která nejsou potřeba. Ovšem v nastavení projektu v Qt Creatoru nemůžu nikde najít místo kde se uvádí knihovny, které se použijí. V projektu jsou nějaké makefile - ovšem, že by se mi chtělo v tom hrabat... od čeho je pak IDE, že?

uiii: to jsem četl a moudrý z toho nejsem, potřebuju návod pro blbce

Krolli: Dependency Walker používám, ale ten stejně neodhalí knihovny které se připojí až za běhu (třeba pluginy)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
uiii



Založen: 12. 08. 2007
Příspěvky: 251

PříspěvekZaslal: 18. červen 2013, 21:50:58    Předmět: Odpovědět s citátem

Val napsal:
Ovšem v nastavení projektu v Qt Creatoru nemůžu nikde najít místo kde se uvádí knihovny, které se použijí.


To by podle mě mělo být v .pro souboru.

Řádek
kód:
QT += core gui


tam určujes části Qt, které chceš slinkovat s projektem, každá ta část by pak měla být reprezentována jedou dynamickou knihovnou. Jsou to zčásti jen doměnky, ověřené to nemám.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
nou



Založen: 28. 07. 2007
Příspěvky: 1047

PříspěvekZaslal: 19. červen 2013, 08:33:31    Předmět: Odpovědět s citátem

ked uz QtQuick tak by som pouzil 2.0. to je ale framework zamerany na tablety a telefony pisane v kvazi JavaScripte pricom problemom je ze tam nie su pouzitelne GUI elementy (tie su az v 5.1). ak chces tvorit klasicke GUI aplikacie pre desktop pouzil by som klasicke QtWidgets. vsetky dll by mal windows oznamit pri spusteni (klasicka hlaska neviem najst to a to dll). zrada je ale s platforms\qwindows.dll ktore sa nacitava nejak dynamicky.
_________________
Najjednoduchšie chyby sa najtažšie hľadajú.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Val



Založen: 18. 06. 2013
Příspěvky: 19

PříspěvekZaslal: 19. červen 2013, 12:56:00    Předmět: Odpovědět s citátem

No mě šlo jenom o to si pro seznámení s Qt zkusit základní aplikaci "Hello word" a rozhodnout se jestli má cenu se vůbec Qtčkem hlouběji zabývat (ten Quick teda asi byla blbost, ale stejně se to chovalo i u GUI aplikace).
Teď jsem teda stáhnul starší verzi Qt4.8 + MinGW nastavil na ní Qt Creator z 5tky a tohle mi na rozdíl od Qt5 + VS2012 vygeneruje aplikaci, která skutečně používá jen QtCore.dll a QtGui.dll (+ nějaký dllka MinGW), prostě se to chová jak bych očekával.
Teď se mi nechce řešit co bylo za problém v té Qt5, spíš se rozhoduju jestli se nevrátím k wxWidgets, které jsem kdysi použil na jeden pidiprojekt a je poněkud méně rozežrané, taky toho zřejmě o dost míň umí, ale zase na to naše programování...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
mar



Založen: 16. 06. 2012
Příspěvky: 602

PříspěvekZaslal: 19. červen 2013, 13:26:41    Předmět: Odpovědět s citátem

Val napsal:
spíš se rozhoduju jestli se nevrátím k wxWidgets

Nevracej se, Qt je mnohem lepší. Taky jsem původně váhal mezi wxWidgets a Qt a nakonec to vyhrálo jednoznačně Qt - wxWidgety trpí špatným návrhem (protože vycházely původně z příšerného MFC) a vůbec dost věcí tam nefunguje, jak by člověk čekal.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
nou



Založen: 28. 07. 2007
Příspěvky: 1047

PříspěvekZaslal: 19. červen 2013, 13:59:10    Předmět: Odpovědět s citátem

urcite by som isiel s Qt. je to podla mna najlepsi C++ GUI framework co existuje ci uz funkcionalitou alebo jednoduchostou vyvoja. ak ti funguje 4.8 tak pouzi to aj ked problemy s 5.0 sa daju urcite vyriesit http://qt-project.org/forums/viewthread/25714
_________________
Najjednoduchšie chyby sa najtažšie hľadajú.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Val



Založen: 18. 06. 2013
Příspěvky: 19

PříspěvekZaslal: 20. červen 2013, 10:23:21    Předmět: Odpovědět s citátem

nou: no vida nejsem sám kdo to řešil. Sice se jim asi podařilo zjistit co všechno za knihovny použít a kam je dát, ale už jim není divné, že je jich potřeba tolik.
Zatím používám tu starší verzi a chci si projít nějaké tutorialy. Qt je velmi mocná. Trochu kanón na vrabce u menšího projektu, ale do budoucna se hodí... Asi se už budu muset smířit s tím, že se celá aplikace nevejde do 1MB Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
mkcz



Založen: 24. 02. 2012
Příspěvky: 7

PříspěvekZaslal: 20. červen 2013, 20:05:14    Předmět: Odpovědět s citátem

Zrovna sem nahrál zdroják jedný aplikace co sem dělal na gitorious.org, je to v Qt4. Tady je odkaz https://gitorious.org/cbprinter. Myslím že by se s toho dalo něco naučit.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
nou



Založen: 28. 07. 2007
Příspěvky: 1047

PříspěvekZaslal: 20. červen 2013, 21:39:26    Předmět: Odpovědět s citátem

len pre infomaciu. pred nedavnom vysiel RC Qt 5.1 ktory podporuje aj pisanie aplikacii na android a iOS.
_________________
Najjednoduchšie chyby sa najtažšie hľadajú.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> C / C++ Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna