For those who don't know Anaconda: it is a science-focused Python distribution created by Continuum.io that has an extensive set of tools to install and manage Python packages (like pip, but better in my opinion). I was curious if I could find another, very simple, solution for packaging Python apps and I found it in Anaconda (or Miniconda which is the slimmed down version). Of course, this is only useful if you use PyQt in your application to begin with, so for smaller, simpler apps using this method seems to be overkill. This makes it possible to also deploy your app to platforms such as Android and iOS. It converts all python modules to C++ code, so that everything can be compiled to a native application. As I understand it, pyqtdeploy creates a distributable by building everything completely from source (even the python interpreter itself). Especially when your package needs to contain more complex libraries such as PyQt, the chance of breakage increases dramatically.Īnother promising candidate is pyqtdeploy but I found it really complex to set up when I gave it a try (although admittedly, I haven't really spent a lot of time on it yet). Programs such as py2exe (for windows), py2app (for Mac) or PyInstaller (for both) have been created to get this job done, and even though they often do it well, they also frequently break down, spitting out cryptical error messages that in no way helped me solving the problems that they were bumping into. Many programming languages offer out-of-the-box tools for creating distributables, but not Python, which is in its essence not designed to be packaged. Distributables can make the life of people (especially the less tech-savvy ones) who want to use your program a lot easier. On the Mac distibutables are often provided as apps compressed in disk images (.dmg files), on Windows they often are a single-file installer (.exe. These should all be packaged together with your program in the distributable package. This enables users to simply install your program on their system without having the hassle of setting up an environment with all dependency libraries that your app requires to run. Once you have created an application that you regard as useful to the larger public, you probably want to package it as a distributable.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |