Jump to content
  • Advertisement
Sign in to follow this  
RudolfVonKrugstein

Qt for cross platform games - big dependency of Qt library

This topic is 1890 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hey,

 

I am thinking of using Qt for a cross platform game which I want to run on iOS, android, windows 7 and probably desktop platforms.

Why Qt? Firstly I like Qt. Also the game will have a lot of gui elements, and Qt seems to be perfect for it.

 

Ok, Qt for android and iOS is still in the testing phase, but let's assume I am not scared by this.

 

But what scares me is the dependency Qt brings. I did a test application for android and the size of the apk was 19mb. That is huge!

It is that huge because the Qt library is bundled with it.

 

What I am wondering now is, if this will be a problem. What do you think? Will potential customers on mobile platforms (android, iOS, Windows 7) be spooked by the extra 19mb the app will have? That is something I just can't estimate and what would be a big argument against Qt.

 

Thanks!

Nathan

Share this post


Link to post
Share on other sites
Advertisement

There is no 'Qt Library", it's a collection of many libraries.  Do you really use all of them?

Share this post


Link to post
Share on other sites

That is a good question. Of course I do not use all of them. But can I somehow only bundle the ones I use? I did not not investigate that yet ...

 

Yes you only have to bundle the ones you use (QTGUI is the big one though and its hard to avoid using), just remember that you can't use the LGPL licensed version of QT on iOS. (or rather, Apple is not allowed to distribute the LGPL libraries through the appstore under their current terms and there is no other sane distribution channel you can use) so you need to buy a commercial/proprietary license for that.

On Android you can atleast use Google Play(Assuming android support is included in the opensource version (i could only see it in the commercial version), not sure if any other appstore has LGPL compatible terms of use but if you link statically it can be quite difficult to comply with the license anyway(and both iOS and Android apps have to be linked statically) if you link statically you only need to include the classes/methods you actually use and the size increase will be negligable.

 

For distribution on most Linux based operating systems you don't have to bundle QT at all, just list it as a dependency in your .rpm installer and the OS will download and install/update it if its not allready done. (All LSB compliant systems can use .rpm installers even if its not their preferred format)

 

If you are targeting mobiles you might be far better off using something like wxWidgets (its license only applies for sourcecode releases, you're free to license your binaries in any way you please which avoids the issue of incompatible appstore terms)

Share this post


Link to post
Share on other sites


If you are targeting mobiles you might be far better off using something like wxWidgets (its license only applies for sourcecode releases, you're free to license your binaries in any way you please which avoids the issue of incompatible appstore terms)

 

I just google for an android port of wxWidgets. There seems to be nothing functional yet. Same thing with iOS. Or am I missing something?

Share this post


Link to post
Share on other sites

 


If you are targeting mobiles you might be far better off using something like wxWidgets (its license only applies for sourcecode releases, you're free to license your binaries in any way you please which avoids the issue of incompatible appstore terms)

 

I just google for an android port of wxWidgets. There seems to be nothing functional yet. Same thing with iOS. Or am I missing something?

 

 

Hmm yeah, its not really done yet.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!