pex1
Pex
Usage
pex [-o
OUTPUT.PEX]
[options]
[--
arg1
arg2 ...]
Overview
pex builds a PEX (Python Executable) file based on the given specifications: sources, requirements, their dependencies and other options.
Options
-
--version -
show program's version number and exit
-
-h, --help -
show this help message and exit
-
-o PEX_NAME, --output-file=PEX_NAME -
The name of the generated .pex file: Omiting this will run PEX immediately and not save it to a file.
-
-p FILE, --preamble-file=FILE -
The name of a file to be included as the preamble for the generated .pex file
-
-D DIR, --sources-directory=DIR -
Add sources directory to be packaged into the generated .pex file. This option can be used multiple times.
-
-R DIR, --resources-directory=DIR -
Add resources directory to be packaged into the generated .pex file. This option can be used multiple times.
-
-r FILE, --requirement=FILE -
Add requirements from the given requirements file. This option can be used multiple times.
-
--constraints=FILE -
Add constraints from the given constraints file. This option can be used multiple times.
-
-v -
Turn on logging verbosity, may be specified multiple times.
-
--pex-root=PEX_ROOT -
Specify the pex root used in this invocation of pex. [Default: ~/.pex]
-
--help-variables -
Print out help about the various environment variables used to change the behavior of a running PEX file.
-
Resolver options:
-
Tailor how to find, resolve and translate the packages that get put into the PEX environment.
-
--pypi, --no-pypi, --no-index -
Whether to use pypi to resolve dependencies; Default: use pypi
-
--pex-path=PEX_PATH -
A colon separated list of other pex files to merge into the runtime environment.
-
-f PATH/URL, --find-links=PATH/URL, --repo=PATH/URL -
Additional repository path (directory or URL) to look for requirements.
-
-i URL, --index=URL, --index-url=URL -
Additional cheeseshop indices to use to satisfy requirements.
-
--pre, --no-pre -
Whether to include pre-release and development versions of requirements; Default: only stable versions are used, unless explicitly requested
-
--disable-cache -
Disable caching in the pex tool entirely.
-
--cache-dir=CACHE_DIR -
The local cache directory to use for speeding up requirement lookups. [Default: ~/.pex/build]
-
--cache-ttl=CACHE_TTL -
The cache TTL to use for inexact requirement specifications.
-
--wheel, --no-wheel, --no-use-wheel -
Whether to allow wheel distributions; Default: allow wheels
-
--build, --no-build -
Whether to allow building of distributions from source; Default: allow builds
-
--manylinux, --no-manylinux, --no-use-manylinux -
Whether to allow resolution of manylinux dists for linux target platforms; Default: allow manylinux
|
PEX output options: |
|
|
Tailor the behavior of the emitted .pex file if |
-
--zip-safe, --not-zip-safe -
Whether or not the sources in the pex file are zip safe. If they are not zip safe, they will be written to disk prior to execution; Default: zip safe.
-
--always-write-cache -
Always write the internally cached distributions to disk prior to invoking the pex source code. This can use less memory in RAM constrained environments. [Default: False]
-
--ignore-errors -
Ignore run-time requirement resolution errors when invoking the pex. [Default: False]
-
--inherit-path=INHERIT_PATH -
Inherit the contents of sys.path (including sitepackages) running the pex. Possible values: false (does not inherit sys.path), fallback (inherits sys.path after packaged dependencies), prefer (inherits sys.path before packaged dependencies), No value (alias for prefer, for backwards compatibility). [Default: false]
|
PEX environment options: |
|
|
Tailor the interpreter and platform targets for the PEX environment. |
-
--python=PYTHON -
The Python interpreter to use to build the pex. Either specify an explicit path to an interpreter, or specify a binary accessible on $PATH. This option can be passed multiple times to create a multi-interpreter compatible pex. Default: Use current interpreter.
-
--interpreter-constraint=INTERPRETER_CONSTRAINT -
A constraint that determines the interpreter compatibility for this pex, using the Requirementstyle format, e.g. "CPython>=3", or ">=2.7" for requirements agnostic to interpreter class. This option can be passed multiple times.
-
--rcfile=RC_FILE -
An additional path to a pexrc file to read during configuration parsing. Used primarily for testing.
-
--python-shebang=PYTHON_SHEBANG -
The exact shebang (#!...) line to add at the top of the PEX file minus the #!. This overrides the default behavior, which picks an environment python interpreter compatible with the one used to build the PEX file.
-
--platform=PLATFORMS -
The platform for which to build the PEX. This option can be passed multiple times to create a multiplatform pex. To use wheels for specific interpreter/platform tags, you can append them to the platform with hyphens like: PLATFORM-IMPL-PYVER-ABI (e.g. "linux_x86_64-cp-27-cp27mu", "macosx_10.12_x86_64-cp-36-cp36m") PLATFORM is the host platform e.g. "linux-x86_64", "macosx-10.12-x86_64", etc". IMPL is the python implementation abbreviation (e.g. "cp", "pp", "jp"). PYVER is a two-digit string representing the python version (e.g. "27", "36"). ABI is the ABI tag (e.g. "cp36m", "cp27mu", "abi3", "none"). Default: current platform.
-
--interpreter-cache-dir=INTERPRETER_CACHE_DIR -
The interpreter cache to use for keeping track of interpreter dependencies for the pex tool. Default: `~/.pex/interpreters`.
|
PEX entry point options: |
|
|
Specify what target/module the PEX should invoke if any. |
-
-m MODULE[:SYMBOL], -e MODULE[:SYMBOL], --entry-point=MODULE[:SYMBOL] -
Set the entry point to module or module:symbol. If just specifying module, pex behaves like python
-m, e.g. python-mSimpleHTTPServer. If specifying module:symbol, pex imports that symbol and invokes it as if it were main.
-
-c SCRIPT_NAME, --script=SCRIPT_NAME, --console-script=SCRIPT_NAME -
Set the entry point as to the script or console_script as defined by a any of the distributions in the pex. For example: "pex
-cfab fabric" or "pex-cmturk boto".
-
--validate-entry-point -
Validate the entry point by importing it in separate process. Warning: this could have side effects. For example, entry point `a.b.c:m` will translate to `from a.b.c import m` during validation. [Default: False]
Releases
4 releases since Debian 9 (Stretch); the text changed 2 times.
--constraints since Debian 12 (Bookworm);
--interpreter-constraint since Debian 12 (Bookworm);
--manylinux since Debian 12 (Bookworm);
--no-manylinux since Debian 12 (Bookworm);
--no-pre since Debian 12 (Bookworm);
--no-use-manylinux since Debian 12 (Bookworm);
--pex-path since Debian 12 (Bookworm);
--pre since Debian 12 (Bookworm);
--preamble-file since Debian 12 (Bookworm);
--rcfile since Debian 12 (Bookworm);
--resources-directory since Debian 12 (Bookworm);
--sources-directory since Debian 12 (Bookworm);
--validate-entry-point since Debian 12 (Bookworm);
-D since Debian 12 (Bookworm);
-R since Debian 12 (Bookworm);
-p since Debian 12 (Bookworm).