PDA

View Full Version : Few questions about deploying on Linux and Windows



Pufo
2nd May 2011, 02:10
About Windows:
In every tutorial about Windows deploy i see "nmake". It is necesary to install it ?
Even if i've used mingw to compile it ?

Also, how do i link to a .dll that has 150 MB ?
It will be necessary that the user would have the entire Qt SDK installed ?

About Linux:

If i compile it, it can't be run by others with the same type of distribution and CPU ?

As far as i know, compiled files are translated to CPU native language, so why would be necessary to include the source files for the user to compile them every time ?

The ideea is that i don't want to distribuite my source code.

ChrisW67
2nd May 2011, 03:29
nmake is the make utility from the Microsoft compiler suite. If you are using the MingW tools in the Qt SDK then the equivalent is mingw32-make. On Windows these tools are used to build, not deploy or install, your software.

Re Linking: If you have used qmake then the necessary link commands are placed into the generate Makefile for you. If you have built a release version of your program then it is linked against the release version of the Qt libraries: at the worst case about 40MB to deploy all of them. (Your screenshot is of a debug build) Your user does not need the entire Qt SDK or any of the debug libraries. Your installer needs to include the relevant release libraries and plugins to support your program on the end-user machine. Open Assistant and search for the key word "deployment".

If you do not want to distribute your code to Linux users then you will need to build a binary version of your program for each target architecture and provide packages using the common packaging tools (i.e. RPM, Debian/Ubuntu packages, Gentoo ebuilds, etc.). The packages should ensure that any needed library dependencies are either bundled or present on the target machine.