5

I have an installer which uses a Python script to install several components. I do not want to install Python on the users computer if they do not already have it and I also do not want having Python installed to be a prerequisite for using my installer. Is there a way of downloading Python without using the installer and just running it from a directory which can be easily removed after the installation is complete?

5 Answers 5

4

Portable Python is an easy tool to use on Windows. If you want to create .exe programs use PyInstaller to compile them. They can both work on top of each other, you can compile (make .exes) using Portable Python, Portable Python 3 is also available.

Sign up to request clarification or add additional context in comments.

1 Comment

That is form 2014. Anything more 2022ish?
2

If the installer is for OS X or Linux, Python shall be there usually. Otherwise

  • Lazy way: Detect if Python is existed. If not, ask user to install it as dependency. e.g. A link for python download page.

  • Rewrite your script. If the logic is not complicated, use some other build-in shell script is a good idea.

  • Static linking Python. Yes, static linking is evil. However, it's still an option. Found some project maybe helpful on github and google-code

Comments

0

(In addition to Owens points). Use py2exe or one of the other exe builder utils for python on windows. On other platforms just use the python script.

Comments

0

Try cx_Freeze

This program can freeze your python code into a .exe file and some other pyd files, it can be run without installing python.

NOTE: You will need to install python to freeze, but you don't need python to run the program.

You can download from here.

https://anthony-tuininga.github.io/cx_Freeze/index.html

TO FREEZE: make a file setup.py type

from cx_Freeze import setup, Executable

setup (name='NEW_EXE_FILE_NAME',
   executables = [Executable("xx.py")])

xx.py will be the python code you want to freeze.

command line: python setup.py build

Comments

0

You can use python's embeddable package, available here: Python Windows Releases

Once you download the package all you need to do is extract it into a folder. That's it... Installed. You also might want to install pip to manage packages by running the pip install script pip install script and add pip.exe's relative path to python3xx._pth file. PatriTech made a nice summary of the process on YouTube: Embedded Python Installation

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.