What are the benefits of Qt programming on Linux rather than Windows
-
You can build software for Windows on Linux using MinGW cross-compiler. Linux distributions sometimes provide cross-compiled libraries in their repos, or you can use http://mxe.cc/
-
@tomy said in What are the benefits of Qt programming on Linux rather than Windows:
So I need to install all the Linux versions of stuff: SDK, NDK, Java, + system images for Linux!?
Yes, sure. Linux binaries work only on Linux, Windows binaries work only on Windows, macOS binaries work only on macOS, and so on, and so on.
A subtle question: my purpose is, at the time being, not developing apps for Linux, rather, just for windows and android which is accessible on my recent windows machine, so why should I install another OS (Linux) + all the stuff for what that has been obtained already using this current machine (Windows)?
I meant, OK, I will install a Linux in dual boot, are there any advantages afterwards?In your first post you said you'd need Linux for your future (whatever that means). If you install it, you'll have it. If you don't need it, don't install it. But maybe I don't understand the question :-)
-
@Wieland
Yes, I may need it "in future" but not "for the time being".I meant what are the advantages of using Linux for Android (instead of windows)? for example: (Android programming on Linux vs. on Widnpws)
- the Android version of Qt on Linux may have less bugs than that of on windows
- using Linux for Android programming gives more accessibilities
- faster compiling/running
These or whatever else.
? -
@Konstantin-Tokarev
Thanks. -
@tomy Well for #1 it depends on what you mean.. I write all my apps cross platform for win/linux/osx. I develop exclusively in either linux (most of the time) or sometimes osx. I don't even have a code editor in windows at all.
The whole point of Qt is cross platform. So if you stick with Qt specific stuff you can write a linux app that just needs a windows box to build.
That being said, you will run into times where things don't look or act right compared to your native OS, in which case you need to do some platform specific tweaking. But on the whole you can write all the code in your OS of choice and then just build and test it on your target platforms.
And my 2 cents on moving to Linux (#4) is hell yea! Once you get used to linux or even osx you will hate ever having to touch windows again. ;) I switched to linux in 2000 and went with OSX from 2004-2008 or so, then got sick of paying 6k/computer for apples and back to linux in 2008. Never ever tempted to ever use windows again except to support my software and play games. ;)
-
Do you use a Linux to write apps for
Windows
,Linux
andiOS
(or evenAndroid
as well)!? That is, is it possible to write apps for iOS on a non-iDevice!? Or even for Windows on a Linux!?I guess these may not be impossible, but there may be bugs in developing various types of apps this way. For example, although developing Android apps on Windows is possible, I faced a bug when testing a simple Qt Quick app on an emulator!
Then, I was told if I use a Linux for writing Qt Quick apps, that bug is fixed there. And that was the reason I tried to know all the benefits of moving to Linux. -
@tomy To develop for iOS (tvOS, watchOS as well) you have to use macOS. Everything else is possible to do on Linux.
Windows development on Linux may give you some troubles that you wouldn't have when doing native development, but they are solvable (except you won't be able to use MSVC on Linux)
-
@Konstantin-Tokarev
Thanks.
I want to write apps for iPhone and iPad (mostly iPhone). So if I can develop apps for Linux, Android and iPhone all on a Linux dist like Ubuntu, it's a really good news. :-)
Just tell me how to do it please?For Windows, it's not that important. I can have a dual boot (a windows and a Linux) and for the windows apps I use the windows platform itself.
-
@tomy Absolutely... I write all my code in my native OS which at this time is Linux.
Then I compile and test on the target platform. So I develop and test mostly on linux but then before releases I build and test on OSX and windows (same code base).
If there are problems I fix them before release. I spend very little time outside linux though.
As for iOS and android. I don't do mobile development much but the library I wrote for android/ios was indeed developed primarily in linux and only tested on the target devices.
You can build android and linux on linux. iOS and OSX on osx, and windows phone/windows desktop on windows. I don't think Qt supports windows phone, but the mobile project I did we went raw rather than using Qt.
-
@tomy said in What are the benefits of Qt programming on Linux rather than Windows:
@Konstantin-Tokarev
Thanks.
I want to write apps for iPhone and iPad (mostly iPhone). So if I can develop apps for Linux, Android and iPhone all on a Linux dist like Ubuntu, it's a really good news. :-)
Just tell me how to do it please?For Windows, it's not that important. I can have a dual boot (a windows and a Linux) and for the windows apps I use the windows platform itself.
To do this you would have to use Qt. Since your Qt code can be used on android as well as ios, you could develop on Linux. You would of course have to actually build it on OSX for deployment and testing on actual iOS devices though.
If you went native you would not be able to develop iOS on anything but a mac. I mean you could still write the code but actual building would have to be done on osx.
You can still use linux, but you would need to have a mac server or something to ssh and build though. So if you are doing raw iOS development just get a mac. If you are going cross platform, use whatever you like (again I prefer linux these days). :)
-
To simplify the issue and offer a simple, right, concise and useful answer we say:
Apps for Windows: using Qt (C++) on a Windows host
Apps for android: using Qt Quick on a Windows/Linux host
Apps for Linux: using (a related version of) Qt (Creator) on a Linux host
Apps for iOS: using (a related version of) Qt (Creator) using an Apple device running Mac Os x.I think you agree?
-
Hi,
Not quite:
Apps for android: on a Windows/Linux/macOS host
You might be able to cross-compile from Linux to Windows but that has other implications.
-
-
@Wieland
I'd seen this, but when I hear that I can use a Linux for iOS apps, questions will appear.So to give an answer for my original question, I say: "no advantages unless I'm developing for Linux and not Windows".