aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/doc/deployment-nuitka.rst
diff options
context:
space:
mode:
Diffstat (limited to 'sources/pyside6/doc/deployment-nuitka.rst')
-rw-r--r--sources/pyside6/doc/deployment-nuitka.rst132
1 files changed, 0 insertions, 132 deletions
diff --git a/sources/pyside6/doc/deployment-nuitka.rst b/sources/pyside6/doc/deployment-nuitka.rst
deleted file mode 100644
index 9be982a4c..000000000
--- a/sources/pyside6/doc/deployment-nuitka.rst
+++ /dev/null
@@ -1,132 +0,0 @@
-|project| & Nuitka
-##################
-
-`Nuitka <https://nuitka.net/>`_ lets you compile your python application into a
-stand-alone executable. Besides being a Python compiler which provides a fair
-acceleration, it has the side-effect of acting as an installer as well.
-Nuitka supports Linux, macOS and Windows.
-
-For more details, see the `official documentation <https://nuitka.net/pages/overview.html>`_.
-
-Preparation
-===========
-
-Install `Nuitka` via **pip** with the following command::
-
- pip3 install nuitka
-
-After installation, the `nuitka3` binary is located in your virtual environment's `bin/`
-directory, or where your Python executable is located.
-Alternatively, you can also run::
-
- python3 -m nuitka
-
-to achieve the same effect.
-
-Freeze an application
-=====================
-
-`Nuitka` has many options that you can use. To list them all, run `nuitka3 -h`.
-
-To simply compile a project, you can run::
-
- nuitka3 <programname>
-
-There are two main features:
-
- * the option to place it in a directory containing the libraries
- (`--standalone`)
- * the option to package the whole project (including shared libraries) into one executable file
- (`--onefile`)
-
-If you use these options, you need to specify `--plugin-enable=pyside6`.
-
-Run an example
---------------
-
-Now, consider the following script, named `hello.py`::
-
- import sys
- import random
- from PySide6.QtWidgets import (QApplication, QLabel, QPushButton,
- QVBoxLayout, QWidget)
- from PySide6.QtCore import Slot, Qt
-
- class MyWidget(QWidget):
- def __init__(self):
- QWidget.__init__(self)
-
- self.hello = ["Hallo Welt", "你好,世界", "Hei maailma",
- "Hola Mundo", "Привет мир"]
-
- self.button = QPushButton("Click me!")
- self.text = QLabel("Hello World")
- self.text.setAlignment(Qt.AlignCenter)
-
- self.layout = QVBoxLayout()
- self.layout.addWidget(self.text)
- self.layout.addWidget(self.button)
- self.setLayout(self.layout)
-
- # Connecting the signal
- self.button.clicked.connect(self.magic)
-
- @Slot()
- def magic(self):
- self.text.setText(random.choice(self.hello))
-
- if __name__ == "__main__":
- app = QApplication(sys.argv)
-
- widget = MyWidget()
- widget.resize(800, 600)
- widget.show()
-
- sys.exit(app.exec())
-
-You don't have to copy this script. You find it as `examples/installer_test/hello.py`.
-
-The command line to proceed looks like this::
-
- nuitka3 examples/installer_test/hello.py
-
-This process creates an executable `hello.bin` and a directory hello.build that you
-don't need. You can execute the binary directly.
-
-In order to create a bundle which can be copied onto a machine without any pre-existing
-installation, run::
-
- nuitka3 --standalone --plugin-enable=pyside6 examples/installer_test/hello.py
-
-This creates an application `hello.dist/hello` that contains everything needed to run.
-
-To run the application, go to `hello.dist/` and run the program::
-
- cd hello.dist
- ./hello
-
-Use the `--onefile` option if you prefer to have everything bundled into one executable, without
-the shared libraries next to it. First you need to install::
-
- pip3 install zstandard
-
-for data compression. Then you can run
-
- nuitka3 --onefile --plugin-enable=pyside6 examples/installer_test/hello.py
-
-This process takes a bit longer, but in the end you have one executable `hello.bin`::
-
- ./hello.bin
-
-
-Some Caveats
-============
-
-
-Nuitka issue on macOS
----------------------
-
-Nuitka currently has a problem with the macOS bundle files on current macOS versions.
-That has the effect that `--standalone` and `--onefile` create a crashing application.
-Older versions which don't have the recent macOS API changes from 2020 will work.
-We are currently trying to fix that problem.