Qt -Windows Vs Linux



  • My title is not appealing any kind of fight b/w Windows developer and Linux Developers.

    I just keen to know What are the differences that would raised when any developer develops on both platform in Qt.
    For Example if i am a Qt developer on windows OS and i want to carry forward my development in linux as well then what differences i would feel while developing applications in linux.
    What changes would be there?


  • Moderators

    Specific answer depends - of course - on the nature of things you are doing. Some tasks are very OS-specific, some are not.

    The general answer is this: there is no difference. When you create a Qt application on one platform, the same code should compile and run in the same way on all other supported platforms.

    The differences you will hit quite quickly are the following:

    • deployment (creating a package that can be used by other people). This step is almost completely different on every platform. Luckily, the Qt documentation describes the topic thoroughly, for each supported OS
    • paths. Qt uses Unix-style paths so for most use cases, your code does not need to be changed on other OSes. But in some cases, you need to be aware that (for example) only Windows knows the idea of labelled drives (c:, d:, etc.)
    • program icons. Every operating system has a different idea about program icons and you need to take care to implement and test this separately for them (although Qt 5 improves things here)
    • installers - closely coupled with deployment. Each platform has different philosophy behind software installation

    Additional info: "link":http://qt-project.org/doc/qt-5/supported-platforms.html.



  • Hi sierdzio.
    Thanks for reply..

    I need to know -Is development in linux is more harder than windows?If yes then Why?


  • Moderators

    Not in my experience, no. I think developing on and using Linux is much easier than Windows. Installing all dependencies is easy (just a single command, usually), you have bigger choice of compilers (which are more advanced and less buggy than MSVC or MinGW), and the environment makes (at least me) more productive because of it's functionality (virtual desktops, tabbed windows, etc.). If you make a mistake, or even break your setup - reinstalling the system takes just a few minutes (30 - 60). But that happens very rarely (or never).


  • Moderators

    [quote author="sierdzio" date="1418119025"]Not in my experience, no. I think developing on and using Linux is much easier than Windows. Installing all dependencies is easy (just a single command, usually), you have bigger choice of compilers (which are more advanced and less buggy than MSVC or MinGW), and the environment makes (at least me) more productive because of it's functionality (virtual desktops, tabbed windows, etc.). If you make a mistake, or even break your setup - reinstalling the system takes just a few minutes (30 - 60). But that happens very rarely (or never).[/quote]

    @ sierdzio: please can you elaborate a bit more on larger number of Linux compilers?
    The precompilations are for GNU C++. A google search for different C++ compilers basically pops up GNU all over the place. Are you refering to different languages then?
    Is there really a difference between MinGW and its Linux GNU variants?


  • Moderators

    Well, there is clang and g++ (GCC). They are compatible with one another, and both of very high quality (and free). And Intel's compiler, of course (but that is available on all platforms).

    MinGW is lagging behind g++ (because it needs to be patched to work on Windows), has some features missing and tends to be buggy. But it is improving, as far as I've hear. It is not compatible with MSVC.


  • Moderators

    There is apparently also a clang version for windows.

    Strictly counting this would make more for windows. ;-)

    However, that is not the point. You are right that MinGW is lagging behind. I have not encountered real bugs of MinGW yet. The most annoying is that you have to adapt to different flavors when changing from MinGW to Linux gcc.


  • Moderators

    [quote author="koahnig" date="1418123567"]Strictly counting this would make more for windows. ;-)[/quote]

    Indeed, but I've noticed that too late to correct my post. And then it was too embarassing, so to speak :P



  • Guys.
    i also noticed that there is no debugger comes with Qt creator on Windows.
    you have to install CDB and then set .
    Whereas, Qt creator in Linux they provide in-built debugger.
    Why so?


  • Moderators

    [quote author="vpwal" date="1418124399"]Guys.
    i also noticed that there is no debugger comes with Qt creator on Windows.
    you have to install CDB and then set .
    Whereas, Qt creator in Linux they provide in-built debugger.
    Why so?[/quote]

    That is not correct. Qt does not include the compiler, nor the debugger, on any platform. You need to install dependencies yourself. The only exception is (I think) Windows MinGW build.


  • Moderators

    With MinGW on windows you have to use GDB.
    Sometimes it is not setup properly, I believe.

    Well, in current windows Qt 5.3.1 setup it is autmatically detected. I have installed Qt libs thorugh the online installer and have also installed MinGW through the online installer.

    On Windows (also on Linux of cource) you can go to project and there is manage kits you will come to "Bulid&Run" under tab Debuggers it sais in my case "c:\Qt\Tools\mingw482_32\bin\gdb.exe". You can go to this menu also through "Tools"->"Options". Eventually you have to select manually GDB coming with your MinGW installation.


  • Moderators

    [quote author="sierdzio" date="1418123957"][quote author="koahnig" date="1418123567"]Strictly counting this would make more for windows. ;-)[/quote]

    Indeed, but I've noticed that too late to correct my post. And then it was too embarassing, so to speak :P[/quote]
    :D

    At least it caused my question, because I was not sure if I missed something essential ;-)


  • Moderators

    [quote author="vpwal" date="1418124399"]Guys.
    i also noticed that there is no debugger comes with Qt creator on Windows.
    you have to install CDB and then set .
    Whereas, Qt creator in Linux they provide in-built debugger.
    Why so?[/quote]Qt Creator did not provide the debugger. Your Linux distro provided the debugger.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.