GTK+ Or Qt Under Windows [closed] - Stack Overflow
-
- Home
- Questions
- Tags
- Users
- Companies
- Labs
- Jobs
- Discussions
- Collectives
-
Communities for your favorite technologies. Explore all Collectives
- Teams
Ask questions, find answers and collaborate at work with Stack Overflow for Teams.
Try Teams for free Explore Teams - Teams
-
Ask questions, find answers and collaborate at work with Stack Overflow for Teams. Explore Teams
Collectives™ on Stack Overflow
Find centralized, trusted content and collaborate around the technologies you use most.
Learn more about CollectivesTeams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Learn more about TeamsGet early access and see previews of new features.
Learn more about Labs GTK+ or Qt under Windows [closed] Ask Question Asked 16 years, 2 months ago Modified 9 years, 11 months ago Viewed 15k times 24 Closed. This question is seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. It does not meet Stack Overflow guidelines. It is not currently accepting answers.We don’t allow questions seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this questionI was wondering which one should I consider if I need the software to be used on both platforms, WIN and Linux and why?
Share Improve this question Follow edited Nov 21, 2012 at 23:13 NG_ 7,1738 gold badges48 silver badges69 bronze badges asked Oct 14, 2008 at 0:44 MikeMike 3- Im looking more in how difficult also will be compiling under windows each of those? I know QT is fairly similar than compiling it under linux. Also which one will take longer time coding the same type of apps? – Eggs McLaren Commented Oct 14, 2008 at 1:01
- My answer, which for some reason was voted down, stated that compiling GTK on Windows is hard. Very time consuming. I don't recommend it. Qt is a 2 hour compile that usually has no troubles. Although distributing c++ compiled with visual studio 2005+ has its own issues. – mxcl Commented Oct 20, 2008 at 14:32
- What's wrong with the asker Mike? His avatar went gray. – Tyler Liu Commented Dec 14, 2011 at 10:16
10 Answers
Sorted by: Reset to default Highest score (default) Trending (recent votes count more) Date modified (newest first) Date created (oldest first) 25Packaging GTK and its dependencies on Windows is a full-time project in itself. Qt is much more easily distributed since it has no dependencies that do not come with Windows.
Qt has been cross platform from the start. GTK has not always been cross platform. Such fundamental decisions shape the overall design, and should be made before any code is written in my opinion.
I would comment more, but I'd be drifting into speculation, the above two things I know for certain.
Share Improve this answer Follow edited Aug 9, 2012 at 19:32 vitaut 55.2k28 gold badges223 silver badges393 bronze badges answered Oct 14, 2008 at 15:07 mxclmxcl 26.9k12 gold badges101 silver badges100 bronze badges 2- 2 There is an all-in-one installer for PyGTK 2.24. I tried it and works, and recent GTK versions seems to be much better and have native support on windows. What makes it comparable with Qt on windows. – saeedgnu Commented Jun 9, 2011 at 11:02
- Unless I love GTK on *nix, mostly because of its design. – saeedgnu Commented Jun 9, 2011 at 11:04
Both are good toolkits that have their advantages and disadvantages.
One difference is the implementation language. Qt is in C++, and GTK+ is in C. However GTK+ has bindings for many, many other languages (perl, python, C++, .NET, etc) so it's not a huge issue.
An Advantage of Qt is that it offers a bit broader range of functionality built in (xml, database access, network programming, openGL, etc). GTK+ has basically all of these things within its orbit (e.g. libxml2, librsvg, libsoup, libgda, etc), but they're not as much of a single coherent package as Qt is.
My personal recommendation is to use gtkmm, the C++ bindings for GTK+. It offers a more comfortable object-oriented language to program in, and it provides nearly the same native performance as using GTK+ from C. (Disclaimer: I contribute to gtkmm).
Share Improve this answer Follow edited Jun 5, 2011 at 2:46 mikerobi 20.8k5 gold badges48 silver badges43 bronze badges answered Oct 14, 2008 at 1:27 jonnerjonner 6,5116 gold badges32 silver badges28 bronze badges 3- 4 And of course, now Qt is LGPL too. – mxcl Commented Feb 8, 2009 at 21:06
- I removed the outdated paragraph about the license. – mikerobi Commented Jun 5, 2011 at 2:46
- Does GTK look native on Windows, however? Also doesn't it depend on X server? I've seen a port of Deluge on Windows, and it looked horrible. – sashoalm Commented Nov 22, 2012 at 8:09
GTK+ you can use almost in all programming languages, in C++ (using gtkmm) in C (gtk+) in C# (with Gtk#) in Python (PyGtk). Behind GTK you have Mono Framework which is great implementation of .NET Framework for cross platform purposes. If you want to use Gtk# you have great IDE (MonoDevelop) with a very powerful gui designer. You can take a look at www.mono-project.org. But still depends what do you want to build, you are looking just gui toolkit, or the entire framework? And the logic behind signals/slots are the same in Gtk+ and Qt, but if you are using Gtk# they are transformed in the delegates/events paradigm.
Share Improve this answer Follow answered Oct 14, 2008 at 0:55 milotmilot 1,0602 gold badges8 silver badges17 bronze badges 4- 2 If you're developing commercial software, you'd be a fool to use anything other than the base libraries, ie. GTK or Qt. Anything above that has no guarantee of maintenance or reliability. Generally speaking. – mxcl Commented Feb 8, 2009 at 21:05
- 1 @Max PyGTK and GTK# are both supported for Gnome app development, so I would expect them to have a good level of support (equivalent to GTK+ itself). – Michael Ekstrand Commented Jun 25, 2010 at 19:21
- Well then you're bound to be both upset and surprised when you find that isn't the case. – mxcl Commented Jun 27, 2010 at 13:12
- It is said that mono is not being actively developed. If mono is dying, so is GTK#. – Tyler Liu Commented Dec 14, 2011 at 10:20
my $0.02:
I've used Qt off and on for the last 4 years, and it's hands-down my favorite toolkit of anything I've tried (Win32, MFC, Borland, Java, GTK). I used GTK for a few weeks to try it out, and didn't like it. Mostly that was because I think it's awkward to use C instead of C++ for GUI apps on a PC... I do embedded work too, and I'd never use C++ on an 8051, but for a big GUI app I much prefer it. If you're going to try GTK, I'd suggest looking in to GTKmm, although I've never used it myself.
Share Improve this answer Follow answered Oct 14, 2008 at 1:00 KeyserSozeKeyserSoze 2,5111 gold badge16 silver badges17 bronze badges Add a comment | 4You might also consider wxWidgets. I have never used any of them but when I was looking over the cross-platform toolkits it was the one I had decided to try.
Share Improve this answer Follow answered Oct 14, 2008 at 1:03 Bryan AndersonBryan Anderson 16.1k8 gold badges72 silver badges83 bronze badges Add a comment | 3They are both fine toolkits. I'd base my decision on the licensing. Qt requires that you pay for a license if you are using it in a commercial product wheras GTK does not.
Share Improve this answer Follow answered Oct 14, 2008 at 0:46 Adam PierceAdam Pierce 34.3k23 gold badges71 silver badges89 bronze badges 2- 13 Of course this is no longer true. – mxcl Commented Feb 8, 2009 at 21:03
- It is very much still true if you're doing anything commercial. – Tustin2121 Commented Aug 10, 2021 at 17:27
Three additional points in favor of Qt:
- Your project does not have to be GPL; there are many other open-source licenses available in the Qt GPL Exception, including BSD and LGPL.
- Qt's default theme on Windows does a much better job of blending in than GTK's Wimp theme.
- If you want to support Macs later, you'll have a much easier time with Qt.
- GTK+ is supported on the Mac, or is at least getting there. – Mark Kegel Commented Nov 5, 2008 at 22:01
- Qt is supported on Mac, Windows, Linux and other embeded plattforms in a reduced form – Harald Scheirich Commented Nov 10, 2008 at 19:26
- 1 From Gtk.org: "GTK+ is licensed under the GNU LGPL 2.1 allowing development of both free and proprietary software with GTK+ without any license fees or royalties." – Piotr Zurek Commented May 12, 2009 at 5:02
I would prefer Qt. As today, Qt is Open-source and free under more permissive, LGPL license. Qt is better ported for Windows and looks more native than GTK. Gimp on windows, for example, looks very strange, because most of its dialogs are not Windows dialogs. Qt can use native Window dialogs like Open/Save which makes it feel better as a framework. And yes, Qt is a framework, not only a GUI Widget. No, I am not advertising Qt here, as Qt have some strangeness for a windows user from development point of view, for example, Qt is Layout based while MFC / .NET are anchor based and Qt's Layout managers are sometimes strange. But if I have to choose between both GTK and Qt, I will select Qt. Also, now, Qt comes with very good IDE, Qt Creator, which is my default C/C++ IDE for all types of projects now (as Qt Creator can be used as such).
Share Improve this answer Follow answered Apr 27, 2012 at 0:10 Петър ПетровПетър Петров 2,0361 gold badge18 silver badges14 bronze badges Add a comment | 2Qt 5.0 has won the war. I'm not a huge fan of C++ (I prefer plain old C), but I must admit that the Qt framework is amazing. Try to write a GUI program with GTK that runs on OSX, Linux, Windows (and soon iOS and Android) with native look-and-feel... Good luck !
Share Improve this answer Follow answered Jan 25, 2013 at 23:06 StefStef 3,7766 gold badges48 silver badges60 bronze badges 1- 2 Nowadays Flutter is an interesting competitor in this area, with the advantage of supporting the Web as another target platform. – hacker1024 Commented Aug 14, 2021 at 14:29
I recommend to use Qt because:
- It's cross-platform and and covers wide range of operating systems (including mobile)
- It is opensource and has a fast speed in getting better
- It has the a nice GUI designer and a very capable IDE (Qt Creator)
- The API design is excellent and easy to use
- It has a great documentation which is easy to read
- It has the Qt translation system which enables you to have a multilingual app
- The GUI layout system where the widgets resize themselves according to a layout makes everything much easier
- The QML gives you the power to create fantastic GUI with great graphics and animations
- It has great support for networking and connectivity(socket, SSL, www, IPC, ...)
- It has QTestLib for testing the code
- It has many language binding if you don't want to use C++
- The Overflow Blog
- Why do developers love clean code but hate writing documentation?
- This developer tool is 40 years old: can it be improved?
- Featured on Meta
- The December 2024 Community Asks Sprint has been moved to March 2025 (and...
- Stack Overflow Jobs is expanding to more countries
Linked
19 .NET or Mono vs Qt, which one for cross-platform development? 10 Cross platform compatibility in C/C++ (porting a project from Java)?Related
132 "Failed to load platform plugin "xcb" " while launching qt5 app on linux without qt installed 157 Qt 5.1.1: Application failed to start because platform plugin "windows" is missing 0 gtk_builder_new_from_file not present under Windows? 1 Cross-compile gtk crate for Windows 2 Gtk clipboard spreadsheet value vs formula (Windows) 5 GTK+ user interface testing 0 Compiling a GTK+ application for windows from linuxHot Network Questions
- Add chemfig figure in a title
- Does the universe not being locally real mean anything for our daily lives?
- Translation of "Nulla dies sine linea" into English within Context Given
- Noetherian spaces with a generic point have the fixed point property
- Can I use copyleft-licensed library in MIT-licensed project?
- Is it impossible to physically observe whether an action is voluntary (purposeful)?
- If models of first-order logic are defined using set theory, is every first-order theory implicitly an extension of set theory?
- How to display a list of lists as a matrix of "lists"?
- Why does a country like Singapore have a lower gini coefficient than France despite France having higher income/wealth taxes?
- Best Practices for Managing Open-Source Vulnerabilities in Enterprise Deployments
- Why is my LED burning out?
- Writing rhythm/slash notation on a single line staff?
- Why is it YHWH and not 'HYH?
- Auto-configuring Global Unicast address with prefixed other than 64-bits len
- Jingle bells, Christmas sells!
- How was Lemech allowed to hunt?
- PSE Advent Calendar 2024 (Day 21): Wrap-Up
- Custom implementation of `std::unique_ptr<T>`
- How to account for disproportionate group sizes?
- How to differentiate coyote vs wolf tracks
- Help in identifying this dot-sized insect crawling on my bed
- Why does Trump want to raise/cancel the debt ceiling if DOGE will save trillions?
- Systemd service to start only after CIFS mount
- Can a 4-d creature twist your right hand into a left hand without breaking it?
Từ khóa » Gtk Vs Qt 2021
-
Qt Vs GTK Overview : R/cpp_questions - Reddit
-
Which One Is Better: GTK+ Or QT? - Info4geek
-
Which Is Better For Cross-platform Application Development: Qt Or GTK?
-
GTK Or QT? - Lazarus Forum - Free Pascal
-
Qt VS GTK - Compare Differences & Reviews? - SaaSHub
-
GTK Alternatives In 2021 - Community Voted On SaaSHub
-
One Key Difference Between WxWidgets And Qt Or GTK Is That ...
-
Difference Between GTK And QT
-
What's The Difference Between GTK+ And Qt? - MakeUseOf
-
Qt Vs GTK+ Vs WxWidgets - A Comparative Study - E-con Systems
-
GUI Programming With C++ In Linux Enviroment | Spiceworks Tech
-
Qt (software) - Wikipedia
-
Why Gtkmm Over Qt? · Issue #413 · Giuspen/cherrytree - GitHub