cxfreeze script

The cxfreeze script is included with other Python scripts. On Windows and the Mac this is in the Scripts subdirectory of your Python installation whereas on Unix platforms this in the bin directory of the prefix where Python is installed.

Assuming you have a script called hello.py which you want to turn into an executable, this can be accomplished by this command:

cxfreeze -c hello.py --target-dir dist

Further customization can be done using the following options:

--version

show version number and exit

-h, --help

show this help message and exit

--init-script=NAME

script which will be executed upon startup; if the name of the file is not an absolute file name, the subdirectory initscripts (rooted in the directory in which the cx_Freeze package is found) will be searched for a file matching the name

--base-name=NAME

the filename of the base executable; if a name is given without an absolute path, the subdirectory bases (rooted in the directory in which the freezer is found) will be searched for a file matching the name

--target-name=NAME

the name of the target executable; the default value is the name of the script; the extension is optional (automatically added on Windows); support for names with version; if specified a pathname, raise an error

--icon=ICON

name of icon which should be included in the executable itself on Windows or placed in the target directory for other platforms (ignored by Python app from Microsoft Store)

--manifest NAME

the name of manifest which should be included in the executable itself (Windows only - ignored by Python app from Microsoft Store)

--uac-admin

creates a manifest for an application that will request elevation (Windows only - ignored by Python app from Microsoft Store)

--shortcut-name NAME

the name to give a shortcut for the executable when included in an MSI package (Windows only)

--shortcut-dir DIR

the directory in which to place the shortcut when being installed by an MSI package; see the MSI Shortcut table documentation for more information on what values can be placed here (Windows only)

the copyright value to include in the version resource associated with executable (Windows only)

--trademarks

the trademarks value to include in the version resource associated with the executable (Windows only)

--target-dir=DIR, --install-dir=DIR

The directory in which to place the target file and any dependent files

-O

optimize generated bytecode as per PYTHONOPTIMIZE; use -OO in order to remove doc strings

--excludes=NAMES --exclude-modules=NAMES

comma-separated list of modules to exclude

--includes=NAMES --include-modules=NAMES

comma-separated list of modules to include

--packages=NAMES

comma-separated list of packages to include, which includes all submodules in the package

--replace-paths=DIRECTIVES

replace all the paths in modules found in the given paths with the given replacement string; multiple values are separated by the standard path separator and each value is of the form path=replacement_string; path can be * which means all paths not already specified

--default-path=DIRS

list of paths separated by the standard path separator for the platform which will be used to initialize sys.path prior to running the module finder

--include-path=DIRS

list of paths separated by the standard path separator for the platform which will be used to modify sys.path prior to running the module finder

-c, --compress

compress byte code in zip files

--bin-includes

comma-separated list of files to include when determining dependencies of binary files that would normally be excluded, using first the full file name, then just the base file name, then the file name without any version numbers (the version numbers that normally follow the shared object extension are stripped prior to performing the comparison)

--bin-excludes

comma-separated list of files to exclude when determining dependencies of binary files that would normally be included, using first the full file name, then just the base file name, then the file name without any version numbers (the version numbers that normally follow the shared object extension are stripped prior to performing the comparison)

--bin-path-includes

comma-separated list of paths from which to include files when determining dependencies of binary files

--bin-path-excludes

comma-separated list of paths from which to exclude files when determining dependencies of binary files

--include-files=FILES

comma-separated list of paths to include in distribution

-z SPEC, --zip-include=SPEC

additional file to include in zip file or a specification of the form name=arcname which will specify the archive name to use; multiple –zip-include arguments can be used

--zip-include-packages=NAMES

comma-separated list of packages which should be included in the zip file; the default is for all packages to be placed in the file system, not the zip file; those packages which are known to work well inside a zip file can be included if desired; use * to specify that all packages should be included in the zip file

--zip-exclude-packages=NAMES

comma-separated list of packages which should be excluded from the zip file and placed in the file system instead; the default is for all packages to be placed in the file system since a number of pa ckages assume that is where they are found and will fail when placed in a zip file; use * to specify that all packages should be placed in the file system and excluded from the zip file (the default)

-s, --silent

suppress all output except warnings and errors

--include-msvcr

include the Microsoft Visual C runtime files