Whether to display the raw command in all options
Enable standalone mode for output. This allows you to transfer the binary to other machines without needing an existing Python environment. This also means it will become very large.
It will enable these options: "--follow-imports" and "--python-flag=no_site".
On top of standalone mode, enable onefile mode. This means creating and using a single compressed executable file instead of a folder.
Delete the build folder after generating the exe or module file. Defaults to off.
Show memory usage. Defaults to off.
This will create one if there is no console window available, i.e., the program is started from a console window.
No console will be created or used.
Use the existing console for output.
The newly created console will be hidden, and the existing console will behave like 'force mode'.
Select the console mode to use, default mode is force
Remove stupid import patches from widely used library module sources.
Include data files specified by the package configuration file.
Support for packages using delvewheel in standalone mode.
Support for 'dill' package compatibility.
Include DLL configuration files according to the package configuration file.
Support for Python2 and the enum package.
Support for including 'eventlet' dependencies and its monkey patch needs for the 'dns' package.
Support for the gevent package.
Support for typelib dependencies of the GI package.
Support for using 'OpenGL' (PyOpenGL) and 'glfw' packages in standalone mode.
Provide implicit imports according to the package configuration file.
Support for the 'kivy' package.
Support for the 'matplotlib' module.
Support for Python's 'multiprocessing' module.
Disable all Qt bindings in standalone mode.
Notify users of potential issues according to the package configuration file.
Support for using the 'pbr' package in standalone mode.
Solutions for pkg resources.
Support for the 'Pmw' package.
Support for PyLint / PyDev code marking.
Support for the 'PyQt5' package.
Support for the 'PyQt6' package.
Support for the 'PySide2' package.
Support for the 'PySide6' package.
Support for the 'webview' package (pywebview on PyPI).
Support for Python's Tk module.
Provide implicit imports for the transformers package.
Automatically use UPX to compress the created binary files.
Enable plugins. Must be the plugin name. Defaults to empty
Remove stupid import patches from widely used library module sources.
Include data files specified by the package configuration file.
Support for packages using delvewheel in standalone mode.
Support for 'dill' package compatibility.
Include DLL configuration files according to the package configuration file.
Support for Python2 and the enum package.
Support for including 'eventlet' dependencies and its monkey patch needs for the 'dns' package.
Support for the gevent package.
Support for typelib dependencies of the GI package.
Support for using 'OpenGL' (PyOpenGL) and 'glfw' packages in standalone mode.
Provide implicit imports according to the package configuration file.
Support for the 'kivy' package.
Support for the 'matplotlib' module.
Support for Python's 'multiprocessing' module.
Disable all Qt bindings in standalone mode.
Notify users of potential issues according to the package configuration file.
Support for using the 'pbr' package in standalone mode.
Solutions for pkg resources.
Support for the 'Pmw' package.
Support for PyLint / PyDev code marking.
Support for the 'PyQt5' package.
Support for the 'PyQt6' package.
Support for the 'PySide2' package.
Support for the 'PySide6' package.
Support for the 'webview' package (pywebview on PyPI).
Support for Python's Tk module.
Provide implicit imports for the transformers package.
Automatically use UPX to compress the created binary files.
Disable plugins. Must be the plugin name. Use '--plugin-list' to query the full list and exit. Most of the time, disabling standard plugins is not a good idea. Defaults to empty.
Specify the name of the executable file. Extension modules and standalone mode do not have this option and will error when used. This may need to include existing path information.
Defaults to "<program_name>.exe" on the current platform.
Specify the location for intermediate files and the final output file. The selected directory will house the build folder, distribution folder, binary files, etc. Defaults to the current directory.
Enter an XML filename to report detailed information about modules, data files, compilation, plugins, etc., in an XML output file. This is also very useful for reporting issues.
For example, these reports can be used to easily recreate the environment using '--create-environment-from-report', but the report contains a lot of information. Defaults to off.
This is your custom option
If specified once (e.g., --main="1.py"), this will override the positional argument, which is the file name to be compiled (entry). If specified multiple times (e.g., --main="1.py" --main="2.py"), it enables "multidist", which allows you to create binaries that depend on the file name or call name.
(Allows multiple main programs to use the same set of compilation parameters)
Add an icon for the executable. Can be given multiple times for different resolutions or files containing multiple icons. When selecting a file containing multiple icons,
you can also use the #<n> suffix to specify a particular icon to include and ignore all others, where n is an integer index starting from 1.
Force the use of clang. On Windows systems, this requires a working Visual Studio version to support. Defaults to off.
Force the use of MinGW64 on Windows. Defaults to off unless using MSYS2 and MinGW Python.
Use the latest MSVC version.
Force the use of a specific MSVC version on Windows. Allowed values are "14.3" (MSVC 2022) and other MSVC version numbers.
Use "list" to get a list of installed compilers, or use "latest". Defaults to the latest MSVC if available, otherwise uses MinGW64.
Follow all imported modules. Enabled by default in standalone mode, otherwise off.
Do not recursively follow into any imported modules, which will override all other inclusion options and cannot be used in standalone mode. Defaults to off.
Also follow modules imported from the standard library, which will greatly increase compilation time and is not well tested, sometimes may not work. Defaults to off.
Follow to the module if it is used, or to the entire package if it is a package. Can be given multiple times. Defaults to empty.
Do not follow the module name even if it is used, or do not follow the entire package if it is a package name, overriding all other options.
This can also contain patterns, such as "*.tests". Can be given multiple times. Defaults to empty.
The company name to use in the version information. Defaults to none.
The product name to use in the version information. Defaults to the base filename of the binary.
The file version to use in the version information. Must be a sequence of up to 4 numbers, e.g., 1.0 or 1.0.0.0, no more numbers or strings allowed. Defaults to none.
The product version to use in the version information. Must be a sequence of up to 4 numbers, e.g., 1.0 or 1.0.0.0, no more numbers or strings allowed. Defaults to none.
The file description to use in the version information. Currently only available on Windows. Defaults to the filename of the binary.
The copyright information to use in the version information. Currently available on Windows/macOS. Defaults to not display.
The trademarks to use in the version information. Currently available on Windows/macOS. Defaults to not display.