I just installed a linux system (Kubuntu) and was wondering if there is a program to make python programs executable for linux.
Answers:
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
Method 1
Just put this in the first line of your script :
#!/usr/bin/env python
Make the file executable with
chmod +x myfile.py
Execute with
./myfile.py
Method 2
If you want to obtain a stand-alone binary application in Python try to use a tool like py2exe or PyInstaller.
Method 3
You can use PyInstaller. It generates a build dist so you can execute it as a single “binary” file.
http://pythonhosted.org/PyInstaller/#using-pyinstaller
Python 3 has the native option of create a build dist also:
https://docs.python.org/3/distutils/builtdist.html
Method 4
Putting these lines at the starting of the code will tell your operating systems to look up the binary program needed for the execution of the python script i.e it is the python interpreter.
So it depends on your operating system where it keeps the python interpreter. As I have Ubuntu as operating system it keeps the python interpreter in /usr/bin/python so I have to write this line at the starting of my python script;
#!/usr/bin/python
After completing and saving your code
- Start your command terminal
- Make sure the script lies in your present working directory
-
Type
chmod +x script_name.py -
Now you can start the script by clicking the script. An alert box will appear; press “Run” or “Run in Terminal” in the alert box; or, at the terminal prompt, type
./script_name.py
Method 5
If one want to make executable hello.py
first find the path where python is in your os with : which python
it usually resides under “/usr/bin/python” folder.
at the very first line of hello.py one should add : #!/usr/bin/python
then through linux command chmod
one should just make it executable like : chmod +x hello.py
and execute with ./hello.py
Method 6
I do the following:
- put #! /usr/bin/env python3 at top of script
- chmod u+x file.py
- Change .py to .command in file name
This essentially turns the file into a bash executable. When you double-click it, it should run. This works in Unix-based systems.
Method 7
Another way to do it could be by creating an alias.
For example in terminal write:
alias printhello='python /home/hello_world.py'
Writing printhello will run hello_world.py, but this is only temporary.
To make aliases permanent, you have to add them to bashrc, you can edit it by writing this in the terminal:
gedit ~/.bashrc
Method 8
Do the following steps:
- Add this as first line in to your execution entry point python file
#!/usr/bin/python
- Modify script to executable
chmod +x <script-name>.py
- Create a symbolic link to your
<script-name>.pyfrom/usr/local/bin
ln -s /usr/local/bin/<executable-name-you-want> <path-to-your-script>
These steps works irrespective of whether you have single standalone python script or if you have multiple dependent script called by your main file.
All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0