Portál AbcLinuxu, 14. května 2025 02:21
Dobrý den, mám aplikaci napsanou v QT4 a 32 bitový systém. Potřeboval bych dvě věci:
1. Spustit tuto aplikaci na počítači s 64 bitovým systémem, kde je pouze QT3 a nemám root přístup.
2. Spustit tuto aplikaci na Windows, kde není nainstalované QT.
Neporadil by někdo, jak to nejlépe provést? Děkuji Radim
S 64-bit systemem ti moc neporadim, ale na widlich staci do adresare s tvym exe souborem nakopirovat Qt knihovny pro vsechny moduly, ktere jsi z Qt pouzil (core, gui, network, xml...) a navic jednu malou knihovnu mingwm10.dll, kterou najdes, kdyz si Qt4 nainstalujes nebo nekde na netu.
Takovy balik pak pujde spustit i na widlich bez instalace celeho Qt baliku. Doporucuju ale behem instalace nejak otestovat, zda dane knihovny uz nahodou v systemu nejsou...
a navic jednu malou knihovnu mingwm10.dll, kterou najdes, kdyz si Qt4 nainstalujes nebo nekde na netu.
Ne všichni kompilují QT aplikace na Windows pomocí minGW... Pokuď si program a QT skompilujete pomocí nějakého "nativního" kompilátoru (Visual studio), tak tahle knihovna není nutná.
To je mozne, v tom pripade tu knihovnu vubec nenajde.
BTW, nebyla integrace Qt do Visual Studia dostupna jen pro uzivatele komercni licence? Kdysi jsem se pokousel cele nekomercni Qt zkompilovat pomoci nmake, ale vzdy se to na necem zarazilo, takze nechapu, ze se s tim chce nekomu drbat
BTW, nebyla integrace Qt do Visual Studia dostupna jen pro uzivatele komercni licence?
Jestli si to dobře pamatuju, tak do verze QT 4.3 ano, ale existoval patch, kterej umožnil skompilovat i GPL verzi QT pomocí nmake. Od verze 4.4 to ale funguje "out-of-the-box".
Kdysi jsem se pokousel cele nekomercni Qt zkompilovat pomoci nmake, ale vzdy se to na necem zarazilo, takze nechapu, ze se s tim chce nekomu drbat
"Slušnej" SW by (na Windows obzvlášť) neměl záviset na žádných zbytečných knihovnách. Navíc jsou IMHO s minGW nějaký licenční problémy.
Díky za odpovědi. O tom statickém linkování jsem si něco našel, ale není mi úplně jasné, jak přesně to funguje a jak to provést. To pak ten program bude 32 bitový i 64 bitovém systému? Co se týče rad na Windows, tak nevím jak vytvořit ten exe soubor (Windows nemám). Ideální by bylo, kdybych prostě mohl vše potřebné naházet do jednoho adresáře a pak by stačilo něco jako ./configure, make, make install, případně nějaká obdoba na windows. Je něco takového možné? Nebo lze se tomu aspoň nějak přiblížit? Za jakékoliv nakopnutí budu vděčný.
Díky všem za rady, nakonec jsem to tedy vyřešil pro linux staticky a pro windows skompilováním a přihozením knihoven (v mém případě byla potřeba i mingwm10.dll).
Návody podle kterých jsem postupoval:
doc.trolltech.com/4.5/deployment.html
doc.trolltech.com/4.5/deployment-x11.html
doc.trolltech.com/4.5/deployment-windows.html
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.