PIP-WHEEL(1)
π PIP-WHEEL(1) β the pip wheel glow-up (bestie edition)
okay so listen. this is pip-wheel from the pip manual, and yes i'm about to make wheel-building sound cute, because it is cute. buckle up π
β¨ NAME β¨
pip-wheel β literally the description of the pip wheel command. that's it. that's the name section. short and iconic. π
πΈ DESCRIPTION πΈ
okay so what does it do?? it builds Wheel archives for your requirements and dependencies. that's the whole vibe. π¦
so a Wheel is a built-package format, and the way it ate is that it doesn't recompile your software during every single install β like, imagine not recompiling every time, couldn't be your source builds π«Ά. more deets here, the wheel docs: https://wheel.readthedocs.io/en/latest/
and pip wheel uses the build system interface as described right here, no cap: https://pip.pypa.io/en/stable/reference/build-system/
β USAGE β
here's every way you can run it, verbatim, do not touch:
python -m pip wheel [options] <requirement specifier> ...
python -m pip wheel [options] -r <requirements file> ...
python -m pip wheel [options] [-e] <vcs project url> ...
python -m pip wheel [options] [-e] <local project path> ...
python -m pip wheel [options] <archive url/path> ...
π OPTIONS π
bestie this is the part where we go line by line, no skipping, i promise. every flag, every env var, all of it. π
-w,--wheel-dir <dir>β builds your wheels into<dir>, and the default is just the current working directory (very "i'm already here" of it). (environment variable:PIP_WHEEL_DIR)--no-binary <format_control>β nope, no binary packages for you. you can pass this multiple times and each time it adds to the existing value. it accepts either:all:to disable all binary packages,:none:to empty the set (notice the colons, iykyk), or one or more package names with commas between them (no colons). heads up though: some packages are tricky to compile and may fail to install when you use this option on them π. (environment variable:PIP_NO_BINARY)--only-binary <format_control>β the opposite energy: do not use source packages. multiple uses stack up, each adding to the existing value. accepts either:all:to disable all source packages,:none:to empty the set, or one or more package names with commas between them. packages without binary distributions will fail to install when this option is used on them π. (environment variable:PIP_ONLY_BINARY)--prefer-binaryβ prefer binary packages over source packages, even if the source packages are newer. newer isn't always better, ok?? (environment variable:PIP_PREFER_BINARY)--no-build-isolationβ disables isolation when building a modern source distribution. β οΈ build dependencies specified by PEP 518 must already be installed if you use this. (environment variable:PIP_NO_BUILD_ISOLATION)--use-pep517β use PEP 517 for building source distributions (and use--no-use-pep517to force legacy behaviour, if you're feeling retro π). (environment variable:PIP_USE_PEP517)--check-build-dependenciesβ checks the build dependencies when PEP517 is used. like a little vibe check but for deps. β (environment variable:PIP_CHECK_BUILD_DEPENDENCIES)-c,--constraint <file>β constrains versions using the given constraints file. this option can be used multiple times, stack 'em. (environment variable:PIP_CONSTRAINT)-e,--editable <path/url>β installs a project in editable mode (i.e. setuptools "develop mode") from a local project path or a VCS url. (environment variable:PIP_EDITABLE)-r,--requirement <file>β installs from the given requirements file. multiple uses? absolutely, go off. (environment variable:PIP_REQUIREMENT)--src <dir>β the directory to check out editable projects into. default in a virtualenv is<venv path>/src, and the default for global installs is<current dir>/src. (environment variable:PIP_SRC,PIP_SOURCE,PIP_SOURCE_DIR,PIP_SOURCE_DIRECTORY)--ignore-requires-pythonβ ignores the Requires-Python information. rules are made to be ignored i guess π. (environment variable:PIP_IGNORE_REQUIRES_PYTHON)--no-depsβ don't install package dependencies. lone wolf behaviour. πΊ (environment variable:PIP_NO_DEPS,PIP_NO_DEPENDENCIES)--progress-bar <progress_bar>β specifies whether the progress bar should be used, one of[on, off, raw](default:on). (environment variable:PIP_PROGRESS_BAR)--no-verifyβ don't verify if the built wheel is valid. living dangerously, iconic. (environment variable:PIP_NO_VERIFY)-C,--config-settings <settings>β configuration settings to be passed to the PEP 517 build backend. settings take the formKEY=VALUE. use multiple--config-settingsoptions to pass multiple keys to the backend. (environment variable:PIP_CONFIG_SETTINGS)--build-option <options>β extra arguments to be supplied to'setup.py bdist_wheel'. (environment variable:PIP_BUILD_OPTION)--global-option <options>β extra global options to be supplied to thesetup.pycall before the install orbdist_wheelcommand. (environment variable:PIP_GLOBAL_OPTION)--preβ include pre-release and development versions. by default, pip only finds stable versions (boring but safe π). (environment variable:PIP_PRE)--require-hashesβ require a hash to check each requirement against, for repeatable installs. this option is implied when any package in a requirements file has a--hashoption. (environment variable:PIP_REQUIRE_HASHES)--group <[path:]group>β install a named dependency-group from a"pyproject.toml"file. if a path is given, the name of the file must be"pyproject.toml". defaults to using"pyproject.toml"in the current directory. (environment variable:PIP_GROUP)--no-cleanβ don't clean up build directories. leave the mess, it's part of the process β¨. (environment variable:PIP_NO_CLEAN)
π¦ AUTHOR π¦
pip developers β the main characters, honestly π
π COPYRIGHT π
The pip developers β yes, same people, they hold the copyright too, slay π
okay that's the whole page bestie, you're now a wheel-building expert, fr fr π«Άβ¨
sign-off moment: this gorgeous little page is from pip version 25.1, dated Jun 26, 2025 β go build something cute with it πππ§
π¦ where this page comes from
- epel 9: python3.13-pip 25.1.1-1.el9 Β· MIT AND Python-2.0.1 AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MPL-2.0 AND (Apache-2.0 OR BSD-2-Clause)
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms