[PyQt] pyqtdeploy vs. others...
patrickkidd at gmail.com
Tue Oct 31 11:35:34 GMT 2017
I have experience with cx_freeze and pyinstaller. Both worked ok and I had the most success with cx_freeze. However I would say that pyqtdeploy is quite superior. The downside is that it took some tinkering to get used to how it works, and then it can be clunky to customize, for example adding extra C modules from the python source. But I have submitted some patches for those problems and we’ll see how Phil does with version 2.
The upsides are that it feels like a much more solid platform than the others, and has a more robust feature set. Plus, Phil has been around longer and I have faith in the longevity of this project. The amount of code in pyqtdeploy accounting for different environments is impressive, and I think the code is always clean and readable. I can understand the desire to simply crank out an exe or app from python source and this is a reasonable request, but I am grateful that I have read most of the pyqtdeploy source and can customize it if necessary. I would say dive in if you have the time.
It creates a qmake project which will generate an Xcode project, for example, and so you can customize it by appending qmake code to the generated .pro. The Xcode project will produce an app bundle which contains a single binary file which protects your source and simplifies deployment. The editor took a while to understand but it is reliable and the xml file format is easy to edit. I can’t speak for android deployment, only macOS and iOS.
I have developed a fairly clean build system for macOS and iOS from dev to release, and would be happy to answer questions and offer tips. I don’t check this list very often, but if you copy me directly on an email to the list it will pass my filter.
> On Sep 26, 2017, at 9:39 AM, Phil Thompson <phil at riverbankcomputing.com> wrote:
>> On 26 Sep 2017, at 9:33 am, Timothy Grove <tim_grove at sil.org> wrote:
>> Any advantage to using pyqtdeploy for deploying pyqt5 applications over pyinstaller or cx_Freeze? Smaller, faster, etc.?
> The original motivation for pyqtdeploy was to simplify the deployment to Android and iOS, ie. in a cross-development environment and with restrictions on what the deployable package was allowed to contain.
> I wouldn't be surprised if other tools were better (or at least easier to use) when target == host, but I'm not sure if they support target != host.
> PyQt mailing list PyQt at riverbankcomputing.com
More information about the PyQt