PIP3-WHEEL(1)

πŸ’… PIP3-WHEEL β€” okay so, the pip3 wheel command, explained πŸ’…

hey bestie!! you just opened the manual page for pip3-wheel β€” that's the wheel command from pip (you know, the one that lives in your venv and judges you when you forget --upgrade). sit down, grab a strawberry πŸ“, and let's get into it.


✨ NAME ✨

pip3-wheel β€” it's literally the description of the pip3 wheel command. that's the whole vibe. that's the assignment. πŸ’«


πŸŽ€ DESCRIPTION πŸŽ€

okay so here's the tea: pip3 wheel builds Wheel archives for your requirements and your dependencies. you point it at stuff you want, it hands you wheels. iconic behavior honestly.

a Wheel is a built-package format, and the way it slays is that it means you don't have to recompile your software every single time you install it. no recompiling, no crying, no waiting. it's giving self-care. 😌✨

want more deets? the wheel docs are right here, go be nosy:

https://wheel.readthedocs.io/en/latest/

and heads up, pip wheel uses the build system interface as described here:

https://pip.pypa.io/en/stable/reference/build-system/
πŸ’‘ lowkey important: those two links are the actual documentation references, so if you want the full lore, go read them. i'm just here to hype you up.

🌈 USAGE 🌈

this is how you actually run it. every one of these is a real, valid shape β€” copy away, bestie:

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> ...

so basically: options first, then whatever you're feeding it β€” a requirement specifier, a requirements file with -r, a VCS project URL, a local project path, or an archive url/path. pick your fighter. πŸ”₯


πŸ‘‘ OPTIONS πŸ‘‘

this is the part where i list every single flag because i would never gatekeep. no cap. πŸ’œ

  • -w, --wheel-dir <dir> β€” build those wheels into <dir>. the default is the current working directory (yes, wherever you're standing right now, that's where the wheels land). (environment variable: PIP_WHEEL_DIR)
  • --no-build-isolation β€” disables isolation when building a modern source distribution. 😭 careful though: if you use this, the build dependencies specified by PEP 518 must already be installed. no isolation, no safety net, you're on your own fr fr. (environment variable: PIP_NO_BUILD_ISOLATION)
  • --check-build-dependencies β€” checks the build dependencies. that's it, that's the job. βœ… (environment variable: PIP_CHECK_BUILD_DEPENDENCIES)
  • -c, --constraint <file> β€” constrain versions using the given constraints file. and yes, you can use this option multiple times β€” stack 'em, bestie. 🫢 (environment variable: PIP_CONSTRAINT)
  • --build-constraint <file> β€” constrain your build dependencies using the given constraints file. also can be used multiple times. πŸŽ€ (environment variable: PIP_BUILD_CONSTRAINT)
  • -e, --editable <path/url> β€” install a project in editable mode (i.e. setuptools "develop mode") from a local project path or a VCS url. the classic "i'm still writing this so don't you dare freeze it" move. πŸ’… (environment variable: PIP_EDITABLE)
  • -r, --requirement <file> β€” install from the given requirements file. the file or URL can be in pip's requirements.txt format, or pylock.toml format. 🚨 heads up: pylock.toml support is experimental. also, this option can be used multiple times. (environment variable: PIP_REQUIREMENT)
  • --requirements-from-script <file> β€” install the dependencies of the given script file, as defined by PEP 723 inline metadata. yes, the deps live inside the script. it's giving ✨multitasking✨. (environment variable: PIP_REQUIREMENTS_FROM_SCRIPT)
  • --src <dir> β€” the directory to check out editable projects into. default in a virtualenv is <venv path>/src. default for global installs is <current dir>/src. 🧚 (environment variable: PIP_SRC, PIP_SOURCE, PIP_SOURCE_DIR, PIP_SOURCE_DIRECTORY)
  • --ignore-requires-python β€” ignore the Requires-Python information. you're overriding the vibes check, not my business. πŸ™ˆ (environment variable: PIP_IGNORE_REQUIRES_PYTHON)
  • --no-deps β€” don't install package dependencies. just the main character, no entourage. πŸ‘‘ (environment variable: PIP_NO_DEPS, PIP_NO_DEPENDENCIES)
  • --progress-bar <progress_bar> β€” specify whether the progress bar should be used. in 'auto' mode, --quiet will suppress all progress bars. the options are [auto, on, off, raw], and the default is auto. πŸ¦‹ (environment variable: PIP_PROGRESS_BAR)
  • --no-verify β€” don't verify if the built wheel is valid. it's giving "i trust myself" energy. πŸ’€ (environment variable: PIP_NO_VERIFY)
  • -C, --config-settings <settings> β€” configuration settings to be passed to the build backend. settings take the form KEY=VALUE. use multiple --config-settings options to pass multiple keys to the backend. πŸ”§ (environment variable: PIP_CONFIG_SETTINGS)
  • --require-hashes β€” require a hash to check each requirement against, for repeatable installs. and note: this option is implied when any package in a requirements file has a --hash option. so it might just show up uninvited. 😭 (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". it defaults to using "pyproject.toml" in the current directory. 🌸 (environment variable: PIP_GROUP)
  • --no-clean β€” don't clean up build directories. leaving a little mess behind, we love a chaotic queen. πŸŽ€ (environment variable: PIP_NO_CLEAN)

πŸ’– Author πŸ’–

pip developers β€” the whole squad, collectively responsible for all of this. πŸ‘‘


The pip developers β€” yes, the same people. they own it, they wrote it, they keep it. πŸ’œ


and that's the whole page bestie!! this was pip3-wheel, from version 26.1, dated Jun 02, 2026 (which is the manual's own footer magic, not me making things up ✨). now go build some wheels and absolutely ate. πŸ¦‹πŸŒˆβ­

bye bye, mwah πŸ’…

πŸ“¦ where this page comes from