How to publish an app?
-
Looks like I had the same question some months ago: Take a look here .
I read your link. And also went to the links there they were provided. And tried to go through a path and make my app ready for sending. But the result was completely awful. I became really confused by those many complicated and complex contents. :(
Whatever I tried to find a way for my app, I couldn't. :(What about you? Could you share your app as you wanted? If so, please tell me what steps are needed, or how could you do it?
This link should help you.
http://doc.qt.io/qt-5/windows-deployment.html#static-linkingI could find
windeployqt.exe
in this path
C:\Qt\Qt5.5.1\5.5\mingw492_32\bin\windeployqt.exe
(remember please that I usedQt Creator
for creating the app)
And also I created arelease mode
of the app. And now I have two folders named
build-My_First_Calculator-Desktop-Release
which contains arelease
folder with some files inside it. I then, went to that path (release
folder) by a command line and pasted the path towindeployqt.exe
. I don't know now how to addconfigure -static
. However I type it, the command line gets an error!I also collected some
.dll
files as follows and put them in a same folder withMy_First_Calculator.exe
(fromrelease
folder). That.exe
files is much smaller in size compared to the.exe
file of thedebug
folder.libgcc_s_dw2-1.dll
libwinpthread-1.dll
Qt5Cored.dll
Qt5Guid.dll
libstdc++-6.dll
Qt5Gui.dll
Qt5Widgetsd.dll
Now what should I do?
It does not matter that I go through a hundred steps, but just guide me step-by-step, I will do it.@tomy Yea it sounds like you want static linking. However, be aware that you need a commerical license (last time I checked) for static linking to Qt.
What does that mean please?
It was me who wrote the code and have the source code. I think if someone else, wants to use it (without getting permission from me) he/she should get a licence for it. Or maybe there is some misunderstanding for me (because it's the first time I do it).So I would definitely not distribute a static linked binary unless you have a commercial license or risk some serious legal ramifications.
Would you please shortly say what do you mean by this, in some works? I would be grateful.
The other way to do it is use the windows deployment tool.
http://doc.qt.io/qt-5/windows-deployment.html#the-windows-deployment-tool
As I said, I saw all of these, but the problem is, for a newcomer of Qt (I have just read two chapters of the official book on
Qt 4.x
) they are very complicated and seems complex.What I need is only a step-by-step solution. Thanks.
-
I also liked the info here
http://www.tripleboot.org/?p=138There is a thing to understand
for a Release Build use the DLLS with NO "d" in nameThis for debug build. Notice the D
Qt5Widgetsd.dll
Please do NOT mix release and debug dlls. :)
-
I also liked the info here
http://www.tripleboot.org/?p=138There is a thing to understand
for a Release Build use the DLLS with NO "d" in nameThis for debug build. Notice the D
Qt5Widgetsd.dll
Please do NOT mix release and debug dlls. :)
@mrjj
In my folder (that.exe
and.dll
files exist) there are also other ended tod
file names as well.
Qt5Cored.dll
Qt5Guid.dll
So I first delete those ones from the folder and remain it alone. Then I start reading the link until the comments. And if there is something not clear for me, I will ask here again.
Thanks. -
@mrjj
In my folder (that.exe
and.dll
files exist) there are also other ended tod
file names as well.
Qt5Cored.dll
Qt5Guid.dll
So I first delete those ones from the folder and remain it alone. Then I start reading the link until the comments. And if there is something not clear for me, I will ask here again.
Thanks. -
@tomy
Those with d is debug version.
Normally you only make deployment folders for Release version but
a debug version is also possible. Just dont mix it :)@mrjj
Thanks.What I have done are as follows:
1- I read the instructions carefully and on a virtual machine (Win 10 x64) created a folder namedtest
. Then I went to the pathC:\Qt\Qt5.5.1\5.5\mingw492_32
(on my real machine, a Windows 7 x64) .
2- Then I copied 10.dll
files from there into thetest
folder of virtual machine.
3- There are two.exe
files on my system. One of the Debug mode with size about 1.4MB and one for the release mode wih size about 49KB. (Very smaller)
Since we need the release files I copied that.exe
files into thetest
folder.
4- Then I double clicked on that file (in thetest
folder) but an error was shown up. I clicked on OK button of the error message and another error!http://uploads.im/HJ3nO.jpg
http://uploads.im/OEXcL.jpgMy questions:
Why do I get these errors?
Consider the.exe
file works well there, OK, so what is the rest of the process? -
Hi
As should be clear from the link,
you need sub folder too called
platforms and dll in there.
-
Hi
As should be clear from the link,
you need sub folder too called
platforms and dll in there.
Hi
As should be clear from the link,
you need sub folder too calledHi,
What sub folder do you mean?
Where my Qt projects are stored there areMy_First_Calculator
,build-My_First_Calculator-Desktop-Debug
andbuild-My_First_Calculator-Desktop-Release
folders.platforms and dll in there.
All the mentioned
.dll
files are pasted into thetest
folder (as shown in the images above).
And what platforms? -
Hi
As should be clear from the link,
you need sub folder too calledHi,
What sub folder do you mean?
Where my Qt projects are stored there areMy_First_Calculator
,build-My_First_Calculator-Desktop-Debug
andbuild-My_First_Calculator-Desktop-Release
folders.platforms and dll in there.
All the mentioned
.dll
files are pasted into thetest
folder (as shown in the images above).
And what platforms?inside test, you must have platforms
and inside platforms u must have the dll as shown and written in the link / picture.So your test folder is the deployment folder.
the
build-My_First_Calculator-Desktop-Debug and
build-My_First_Calculator-Desktop-Release
are the build folders. -
I got it. :)
I created a folder named platforms inside test and copied the qwindows into it. Now the app works well. Thanks so much.
This step is finished. Now the main goal. How to make one .exe file or installer file or whatsoever, for publishing the app to others please?
-
I got it. :)
I created a folder named platforms inside test and copied the qwindows into it. Now the app works well. Thanks so much.
This step is finished. Now the main goal. How to make one .exe file or installer file or whatsoever, for publishing the app to others please?
@tomy said in How to publish an app:
How to make one .exe file or installer file or whatsoever, for publishing the app to others please?
There are many install makers.
I like this one
http://www.innosetup.com/isinfo.php
for windows deploymentbut Qt also have its own
http://doc.qt.io/qtinstallerframework/That works cross platform etc.
So use what ever fit the goal.
This one i have been told is epic easy
http://installforge.net/features/
but I have not tested that claim. -
@tomy said in How to publish an app:
How to make one .exe file or installer file or whatsoever, for publishing the app to others please?
There are many install makers.
I like this one
http://www.innosetup.com/isinfo.php
for windows deploymentbut Qt also have its own
http://doc.qt.io/qtinstallerframework/That works cross platform etc.
So use what ever fit the goal.
This one i have been told is epic easy
http://installforge.net/features/
but I have not tested that claim.@mrjj
Thank you. I went for Qt's one. I'm in Setting up Qt Installer Framework.
There it says:
"Clone the Qt Installer Framework source code from http://code.qt.io/cgit/installer-framework/installer-framework.git/ to get the sources for the tools."
And when I go to there and click on clones at the bottom of the page, nothing will be done. -
@mrjj
Thank you. I went for Qt's one. I'm in Setting up Qt Installer Framework.
There it says:
"Clone the Qt Installer Framework source code from http://code.qt.io/cgit/installer-framework/installer-framework.git/ to get the sources for the tools."
And when I go to there and click on clones at the bottom of the page, nothing will be done. -
I found this page but there are only codes there seemingly. Is a git a tool/program to use it for making the installer? If so, where to download it?
@tomy
GIT is the world most used tool for source code revision control.
It will download the source code.https://backlogtool.com/git-guide/en/
http://rogerdudler.github.io/git-guide/Make sure u understand what it is. you just need it for download.
But are u sure u need to build it ?
Its include in the installer.
( -
@tomy
GIT is the world most used tool for source code revision control.
It will download the source code.https://backlogtool.com/git-guide/en/
http://rogerdudler.github.io/git-guide/Make sure u understand what it is. you just need it for download.
But are u sure u need to build it ?
Its include in the installer.
(@mrjj said in How to publish an app:
@tomy
GIT is the world most used tool for source code revision control.
It will download the source code.https://backlogtool.com/git-guide/en/
http://rogerdudler.github.io/git-guide/Make sure u understand what it is. you just need it for download.
Honestly I don't know what it is but something to make an installer for my app :)
But are u sure u need to build it ?
I can't remember if I downloaded it at the times of downloading and installing Qt Creatro or not. If it's installed perhaps, where to find it?
Its include in the installer.
( -
@mrjj said in How to publish an app:
@tomy
GIT is the world most used tool for source code revision control.
It will download the source code.https://backlogtool.com/git-guide/en/
http://rogerdudler.github.io/git-guide/Make sure u understand what it is. you just need it for download.
Honestly I don't know what it is but something to make an installer for my app :)
But are u sure u need to build it ?
I can't remember if I downloaded it at the times of downloading and installing Qt Creatro or not. If it's installed perhaps, where to find it?
Its include in the installer.
( -
@mrjj said in How to publish an app:
@tomy
Use the maintenance tool found with the rest of Qt and check.Sorry but I didn't get it!!
I searched that maintenance tool in tools tab of Qt Creator and also the page http://doc.qt.io/qtinstallerframework/
but couldn't find it.
I downloaded the Git using the second link and installed it and have this window now: -
@mrjj said in How to publish an app:
@tomy
Use the maintenance tool found with the rest of Qt and check.Sorry but I didn't get it!!
I searched that maintenance tool in tools tab of Qt Creator and also the page http://doc.qt.io/qtinstallerframework/
but couldn't find it.
I downloaded the Git using the second link and installed it and have this window now: -
No, the maintenance tool is a standalone application.
Its not inside Creator
Mine is here
"D:\Qt\MaintenanceTool.exe"@mrjj said in How to publish an app:
No, the maintenance tool is a standalone application.
Its not inside Creator
Mine is here
"D:\Qt\MaintenanceTool.exe"I found it and created a temporary repository (just clicked Add and set a password) on it. Then pressed "Add or Remove" option there. Now I'm to select some components as follows:
http://uploads.im/5FWui.jpg -
Super. Not sure if there for 5.5 but maybe u can just use never Qt ?