So what could be easier than giving them a single executable file to click on? Collapsing the entire directory into a single file is an option in PyInstaller, though not in cx_freeze. The motivation for this process is to make things easy for the users of your application. In order to accomplish the same thing with cx_freeze, you’ll need to install an additional tool such as pyarmor or pyobfuscate. PyInstaller provides a command line argument to obfuscate the bytecode with the Advanced Encryption Standard, AES256. If you want to protect your app against being reverse-engineered, you can encrypt the bytecode. These could, in principle, be decompiled to reveal the logic of your code. However, both include compiled Python scripts (.pyc files). Code Obfuscationīoth cx_freeze and PyInstaller build a distribution that is free from your original source code. In other words, if you need to distribute your program to users on a variety of platforms, you’ll need to use a variety of platforms to build them. So if you’re using either tool on a Mac, you’ll be able to generate. However, neither of them have the ability to cross- compile. Cross-Platform Compatibilityīoth cx_freeze and PyInstaller are cross-platform in the sense that they can be used on any OS. However, if you find that you have something like hidden imports to deal with, it’s much trickier to specify these requirements in PyInstaller. For the most common use cases, PyInstaller is all you need. It supports most libraries out-of-the-box, so the hassle of including dependent libraries is already taken care of. All this helps you to deliver an executable that matches your needs precisely.Ĭonversely, PyInstaller’s approach is to let you just freeze your code without worrying about all the options. There’s also an option to set chosen environment variables upon installation. You can set a target name for your executable, as well as a path to the icon that should be used to represent it. In the setup file you can specify which modules, files, and packages to include (or exclude) from the build. While the setup file required by cx_freeze presents an additional step in the process, it also enables great flexibility. exe file will be available in a directory within the folder that contains setup.py. Navigate to the folder containing pascals_triangle.py and setup.py.For this example, however, it’s fairly simple: setup.pyĮxecutables = ) The setup.py file configures the options for cx_freeze, and can get complicated if you’re trying to do something very particular. Before running cx_freeze, you’ll need to create a file called “setup.py” that is stored in the same folder as the pascals_triangle.py program. This process is almost as simple with cx_freeze, but requires an extra configuration step. This creates a folder called “dist” in the folder that contains your Python code, and within that folder you’ll find your. Navigate to the folder that contains the pascals_triangle.py program.Print(''.format(a),end=" ",sep=" ")Īssuming you’re using a Windows machine, all you need to do to build an. For this example, I’m using a simple script that prints out Pascal’s Triangle, named pascals_triangle.py pascals_triangle.py We’ll need a Python program from which to build our executable. Once the runtime builds, you can download the State Tool and use it to install your runtime.Īnd that’s it! You now have installed Python in a virtual environment.py to.Choose the packages you’ll need for this tutorial, including cx_freeze and PyInstaller. Click the Get Started button and choose Python and the OS you’re working in.How to Install Python Packages with the ActiveState Platform If you already have Python installed, you can skip this step. Both of these tools are versatile and easy to use, but depending on your use case, you may prefer one over the other. Here we’ll consider two of the most popular options: cx_freeze and PyInstaller. They will “freeze” your code and build an executable file for you. How can you distribute your Python code to users who expect to simply click on an executable file?įortunately, there are many Python utilities that help convert files from. Your friend balks, “Command line? Oh no, that’s not for me.” Or, maybe you’re an Admin that has to get everyone in the organization (yep, even the non-technical ones) to run your Python script. Only first, he’ll have to install Python, and then run the program from the command line or IDLE shell. You send a friend a directory with all your scripts and tell him to give it a shot. Picture this scenario: you’ve just created a fantastic Python program and want to share it with the world. exe is a task more common than you’d imagine.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |