Quick question!



  • hey all , if i write a Qt C++ app would the framework need to be installed on other windows machines to run? like a .net app needs .net framework.


  • Moderators

    Welcome to the forum

    This depends on the installation you use. Typically, Qt is setup using dlls. Those dlls have to be available on your target system.

    You can compile your own version of Qt with static libs. However, beware of the license options.

    Assuming that this quick answer is sufficient. You find more information on devnet.



  • so i cant create a standalone native exe that can be used on xp/vista/seven?

    if thats the case then its back to Vs 2010



  • you can build a standalone executable for windows if you link statically to Qt. But then you need a commercial license or afaik your software must be GPL.


  • Moderators

    [quote author="tangomouse" date="1310902554"]so i cant create a standalone native exe that can be used on xp/vista/seven?
    [/quote]
    You can use it on the different windows versions, but you have to make sure that you have also the dlls there. You can make a setup project in visual studio. This allows you to have all the dlls of Qt, and there are also some ms dlls required, in one installation file.
    [quote author="tangomouse" date="1310902554"]if thats the case then its back to Vs 2010[/quote]
    What do you mean with that part?



  • [quote author="tangomouse" date="1310901023"]hey all , if i write a Qt C++ app would the framework need to be installed on other windows machines to run? like a .net app needs .net framework.

    [/quote]

    No, but you need to copy the dll files that your application depends upon (you can use Dependency Walker to find them).
    Follow this tutorial for a detailed explanation about how to deploy applications on Windows platform http://developer.qt.nokia.com/doc/qt-4.7/deployment-windows.html



  • No need,
    if it is needed, Single app is enough for static compilation , and copy necessary dll together with your app for dynamic compilation .



  • my app is a single executable , i had this problem with this before ,I wrote a program called Re-enable ,now in its second release Re-EnableV2 , Written in vb.net ,users wanted a single exe that runs on any windows machine ,even those without .net installed ,so i had to use xenocode to make it portable.

    So i decided its time i learnt to code in C++ which i have done and know enough to start working on the next release , I am used to the .net interface but dont like the amount of controls in VS 2010 in win32 or mfc, now i like the Qt interface its just what i'm looking for but the end result must be a single exe thats small in size and usable on all windows platforms. ,using xenocode massively increases the size ,up to 23mb from a few 100k exe



  • Then the only option would be use mingw and static libs. But for static linking, you must have a commercial licenmse or use GPL I think. Using MSVS will not give one exe that runs on all windows machines, as it depends on the MSVC runtime version (= redistributables) which must be installed in the right version...



  • I would kindly like to propose the original poster to edit the title of the thread to something more informative. :-)


Log in to reply
 

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