0

I am looking for a Multiplatform Window Interface (Create a window and have it work on all platforms) but i had trouble finding one. I came across GTK, Qt, and a few others but most were unclear about the licence, not updated for years, etc.

Do you guys know about any Multiplatform Window Interface which supports OpenGL, commercial use and are completely free?

Jeroen
  • 15,257
  • 12
  • 59
  • 102
  • 2
    So what was wrong with Qt? –  Jul 15 '13 at 19:20
  • I don't talk lawyerese. – Jeroen Jul 16 '13 at 06:39
  • 1
    If you are going to make any software using 3rd party libs, you _need_ to know the basics about common software licenses, like GPL and LGPL. Finding the Qt's license model from Wikipedia takes about 30 secs. Finding what the license means from its Wikipedia page takes another 30 secs. –  Jul 16 '13 at 07:07
  • I spent 30 minutes on the Qt licence already and I still don't understand whether linking dynamically is required, allowed or prohibited... – Jeroen Jul 16 '13 at 14:21
  • 2
    Dynamic linking is required, if you want to keep your program as a "work that uses the Library". That's how you make commercial programs using LGPL libraries. –  Jul 16 '13 at 14:26

3 Answers3

6

I'd say Qt is clear about the licencing and is updated frequently? From my perspective, Qt is the way to go!

Link describing the licencing possibilities: http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html

c_k
  • 1,746
  • 1
  • 20
  • 35
1

Try SDL.

Simple DirectMedia Layer (SDL) is a cross-platform, free and open source multimedia library written in C that presents a simple interface to various platforms' graphics, sound, and input devices. It is widely used due to its simplicity. Over 700 games, 180 applications, and 120 demos have been posted on its website.

kvv
  • 336
  • 1
  • 13
1

You may link against gtk+ libraries (LGPL) even from commercial applications.

Keep in mind that most cross platform libraries immitate the target and do not use the nativ ui frameworks. This might lead to non perfect results and minor glitches. It does not really matter that much unless you go for "Pixel-Perfect"

As a side node, I'd go for gtk+:

  1. the application development mailinglist is very active, gtk+ developers tend to answer more complex questions
  2. introspection - this is an unbeatable advantage
  3. good documentation

Against Qt:

  1. you need a precompiler - moc - which is a major PITA
  2. signals were (until Qt 4.x, and still the default!) evaluated only at runtime which sometimes results in quite annoying debugging process
  3. Documentation is missleading in some places (QThread) and has been wrong for years

Related question Gtk+ and OpenGL bindings

Community
  • 1
  • 1
drahnr
  • 6,782
  • 5
  • 48
  • 75
  • GTK is my preffered toolkit, but at the moment, GTK 3 multiplatform support is really not on par with Qt. – liberforce Jul 21 '13 at 09:51
  • You are right that there _are_ issues, but I do not think that they hamper anybody in a too bad way - correct me if I am wrong - been a while since I compiled anything on windows. – drahnr Jul 21 '13 at 12:17
  • That's really a problem nowadays. Several multiplatform projects are migrating from GTK+ to Qt because of the lack of an officially supported version of GTK+ on Windows. Wireshark comes to my mind, but there are others. The sad thing is that the GTK+ team has no Windows maintainer, so miracles can't happen, somebody needs to do the work. – liberforce Jul 21 '13 at 22:10