Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. General talk
  3. Brainstorm
  4. What are the benefits of Qt programming on Linux rather than Windows

What are the benefits of Qt programming on Linux rather than Windows

Scheduled Pinned Locked Moved Solved Brainstorm
androidubuntuvmware
20 Posts 6 Posters 8.9k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • tomyT tomy

    @Wieland

    see [Supported Platforms]

    So:
    Host: Windows => Target : Windows and Android
    Host: Linux (say Ubuntu) => Target : Linux and Android

    3 - Yes, the binaries of these tools aren't compatible between Linux and Windows.

    So I need to install all the Linux versions of stuff: SDK, NDK, Java, + system images for Linux!?

    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?

    ? Offline
    ? Offline
    A Former User
    wrote on last edited by
    #6

    @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 :-)

    tomyT 1 Reply Last reply
    1
    • ? A Former User

      @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 :-)

      tomyT Offline
      tomyT Offline
      tomy
      wrote on last edited by tomy
      #7

      @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.
      ?

      A 1 Reply Last reply
      0
      • K Konstantin Tokarev

        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/

        tomyT Offline
        tomyT Offline
        tomy
        wrote on last edited by
        #8

        @Konstantin-Tokarev
        Thanks.

        1 Reply Last reply
        0
        • tomyT tomy

          @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.
          ?

          A Offline
          A Offline
          ambershark
          wrote on last edited by ambershark
          #9

          @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. ;)

          My L-GPL'd C++ Logger github.com/ambershark-mike/sharklog

          tomyT 1 Reply Last reply
          1
          • A ambershark

            @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. ;)

            tomyT Offline
            tomyT Offline
            tomy
            wrote on last edited by tomy
            #10

            @ambershark

            Do you use a Linux to write apps for Windows, Linux and iOS (or even Android 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.

            K A 2 Replies Last reply
            0
            • tomyT tomy

              @ambershark

              Do you use a Linux to write apps for Windows, Linux and iOS (or even Android 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.

              K Offline
              K Offline
              Konstantin Tokarev
              wrote on last edited by
              #11

              @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)

              tomyT 1 Reply Last reply
              1
              • K Konstantin Tokarev

                @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)

                tomyT Offline
                tomyT Offline
                tomy
                wrote on last edited by tomy
                #12

                @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.

                A 1 Reply Last reply
                0
                • tomyT tomy

                  @ambershark

                  Do you use a Linux to write apps for Windows, Linux and iOS (or even Android 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.

                  A Offline
                  A Offline
                  ambershark
                  wrote on last edited by
                  #13

                  @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.

                  My L-GPL'd C++ Logger github.com/ambershark-mike/sharklog

                  1 Reply Last reply
                  1
                  • tomyT tomy

                    @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.

                    A Offline
                    A Offline
                    ambershark
                    wrote on last edited by
                    #14

                    @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). :)

                    My L-GPL'd C++ Logger github.com/ambershark-mike/sharklog

                    1 Reply Last reply
                    1
                    • tomyT Offline
                      tomyT Offline
                      tomy
                      wrote on last edited by
                      #15

                      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?

                      1 Reply Last reply
                      0
                      • SGaistS Offline
                        SGaistS Offline
                        SGaist
                        Lifetime Qt Champion
                        wrote on last edited by
                        #16

                        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.

                        Interested in AI ? www.idiap.ch
                        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                        1 Reply Last reply
                        1
                        • ? Offline
                          ? Offline
                          A Former User
                          wrote on last edited by
                          #17

                          tomyT 1 Reply Last reply
                          2
                          • ? A Former User

                            tomyT Offline
                            tomyT Offline
                            tomy
                            wrote on last edited by tomy
                            #18

                            @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".

                            ? 1 Reply Last reply
                            0
                            • tomyT tomy

                              @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".

                              ? Offline
                              ? Offline
                              A Former User
                              wrote on last edited by
                              #19

                              @tomy The table is the definitive answer. Other combinations might be possible, but are not officially supported.

                              1 Reply Last reply
                              1
                              • tomyT Offline
                                tomyT Offline
                                tomy
                                wrote on last edited by
                                #20

                                Thank you all. The problem is solved I think. I up vote all answers to appreciate your help.

                                1 Reply Last reply
                                0

                                • Login

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • Users
                                • Groups
                                • Search
                                • Get Qt Extensions
                                • Unsolved