A Good cross-platform C++ Gui framework?



I am searching for a good(and a bit popular) cross-platform C++ GUI and application framework,which supports Android and/or Ios in addition to desktop platforms support.But I am not able to find the one I want.

For example,Qt.It's popularity is great,also there are books for Qt which simplify learning.It supports many Oses,Windows,Linux,Mac,Android,Ios.It supports c++ widgets.But the thing I hate with Qt is,seems like they are concentrating heavily on Qml and Qt Quick,they praise them and advertising them heavily. I am really too bored of this,they are treating c++ widgets like a stepchild.

There is wxWidgets.I think it is great but unfortunately it doesn't support Android or Ios.

I come across JUCE.It seems good but unfortunately it doesn't use native widgets ,it may be a problem especially with Ios and Osx.

I tried C++ Builder,it seems easy to develop app with it ,but unfortunately books about it are very old.Finding resource for C++ Builder and Firemonkey platform is very difficult on web,so learning it seems difficult.Also it is expensive and doesn't have a Lgpl like free licence.

So,do you know another cross-platform(including android and/or ios) c++ gui and framework solution?




Last edited on
SDL has made support possible in version 2 for android and ios.
http://www.libsdl.org/

SFML also has support and is usually the one recommended by people here.
http://www.sfml-dev.org/
Last edited on
Thanks for your very quick/instant reply :) I will look at them.
Last edited on
On both of their websites,it's written that both SFML and SDL are for developing multimedia applications and games.So,does it mean that they are not for general purpose applications other than multimedia and games?
Last edited on
Generally they are used for games, as they don't provide enough control outside of that.

Don't get put off by their talking about Qt Quick; I don't use it all that often. The reason that the C++ side has been put off is that it is now a well established programming environment that most people would know about, and they want people to start getting into QtQuick, which has never been as popular. Just go with Qt. You may even find QtQuick useful, especially for the android and IOS devices, because it is designed to work well with embedded platforms (and as such, doesn't really work all that well on a desktop).
Qt looks like the way to go if you're going to support personal computers and tablets and phones.

SDL and SFML are not UI libraries. They both basically open a window and process window events. It would be up to you to make buttons and other ui elements.
GUI stuff for SFML:
http://sfgui.sfml-dev.de/

GUI stuff for SDL:
Have fun???
Basically SDL is fun to integrate with stuff, so far I have integrated it with Ogre3d and JNI.

I just remembered another thing I used in the past called Marmalade that could make apps for a bunch of different platforms.
https://www.madewithmarmalade.com/
Last edited on
Thanks for your answers.

I was aware of Marmalade,but there are some problems about it.I looked at the webpage of marmalade again,and I had an impression that it's for games.When I look at it's showroom,there are only games.So,is it for developing games only?


The other problem is,it costs 1199 per year if I want to develop for desktop plaforms too(also there's no linux support).

But the thing I like with Marmalade is,although they have Marmalade Quick too,they are not advertising it like developing with it is superior against developing in c++, unlike Qt.

Still it maybe an option for me(if it is possible to develop apps other than games)

I am not sure if SFML or SDL combined with a gui library is enough to develop applications (which are not multimedia or game apps).

I started thinking like,I may learn wxWidgets for desktop platforms and learn Mosync(but it's site don't work) for mobile platforms.It would be a bit complex,but I don't want to see the word "qml" or "qt quick" :D
Last edited on
Topic archived. No new replies allowed.