Python: Difference between revisions

From Smithnet Wiki
Jump to navigation Jump to search
Line 19: Line 19:
Altinstall does not execute bininstall and maninstall, so good for not overwriting system python. Test resultant binary:
Altinstall does not execute bininstall and maninstall, so good for not overwriting system python. Test resultant binary:
  /usr/local/bin/python3.12 --version
  /usr/local/bin/python3.12 --version
If you want somewhere else than /usr/local, add --prefix=/opt or simialr to configure.


== Virtual Environments ==
== Virtual Environments ==

Revision as of 14:09, 8 April 2024

PIP

On Windows, start pip with:

py -m pip

Python Compilation

dnf groupinstall 'Development Tools'
dnf install python3-devel
wget https://www.python.org/ftp/python/3.12.2/Python-3.12.2.tar.xz
tar xvf Python-3.12.2.tar.xz
./configure --enable-shared --with-ensurepip=install
./configure --enable-optimizations
make
make test
sudo make altinstall

Altinstall does not execute bininstall and maninstall, so good for not overwriting system python. Test resultant binary:

/usr/local/bin/python3.12 --version

If you want somewhere else than /usr/local, add --prefix=/opt or simialr to configure.

Virtual Environments

Create a virtual environment:

python -m venv py-env/demo

Activate a virtual environment on Windows:

py-env\demo\Scripts\activate

or Linux:

. py-env/demo/bin/activate

Install within a venv:

pip install --upgrade pip
python -m pip install pyinstaller
python -m pip install requests

Optionally, force a specific version, such as:

python -m pip install requests==2.30.0

Deactivate an env:

deactivate

Python Installer

pip install pyinstaller

Add C:\Users\<user>\AppData\Roaming\Python\Python312\Scripts to PATH:

pyinstaller --onefile file.py

and the resultant executable will be in the dist directory.