One of the most important things about pip/pip3 is that you don't need
to make sense of the file names pip knows the naming convention and
downloads and installs the latest version of the specified package that
is compatible with your python version and OS.
Wheels are a package format for python than recent versions of pip
understands and have a very specific naming format to allow pip to do
its job. (Full explanation of the content
PEP 376 – Database of Installed Python Distributions | peps.python.org and naming
PEP 427 – The Wheel Binary Package Format 1.0 | peps.python.org).
The pip command example given breaks down to:
c:\python34\scripts\pip3.exe - the pip program with its most likely path
on windows
install - the command
-U - Update
--pre - Include pre-release and development versions.
-f Index of /Phoenix/snapshot-builds - Where to look in
addition the the default locations
wxPython_Phoenix - the package to try to install
Pip will then go off to the specified location(s) and the default
locations looking for packages that match wxPython_Phoenix and download
the one that has the highest release number, with --pre this will
include pre-releases, that also matches your python version, (py2.py3,
py3 or py34), ABI, (none, abi3 or cp33d), and OS/CPU (any for pure
python or win32 are examples). The cleaver bit is that pip knows all
about the naming and has rules for compatibility and precedence and will
pick the "best" compatible build for you.
Examples of naming - this is for information let pip work it out for you:
parrot-1.0-1-py27-none-any.whl will be a package of parrot version 1.0
build 1 that will work for Python 2.7 doesn't care which build of python
27 so is pure python and will work on any CPU/OS - it will contain
python files, meta data possibly other data and may well be digitally
signed and because it doesn't contain any compiled extensions it doesn't
care where it is installed.
The example you gave was:
wxPython_Phoenix-3.0.3.dev1964+f780b21-cp34-cp34m-win32.whl
which I would read as:
wxPython_Phoenix - package name
3.0.3 - version 3.0.3
dev1964 - Development Build no 1964 - so without --pre Don't install
+f780b21 - probably either some build flags or part of the source
control system version ID
cp34 - Build for CPython 3.4
cp34m - With the cp34m ABI
win32 - for Windows 32 bit - note your machine & OS may be 64 bit but if
your python is 32 bit this is the one you need.
.whl - it is a wheel which is the default preferred format.
Note that if pip cannot find a wheel that matches your system it will
fall back to looking for the other formats that it understands which may
end up downloading, building and installing from source packages - if
they have other language extensions then this normally fails on windows
unless you have just the right tools and libraries installed.
The nice thing about wheels is that as long as someone takes the trouble
to build and upload for your combination of Python & OS they can include
extensions such as C, C++ fortran, etc., without you having to go and
find either the tool chain and dependencies.
Hope I have made things clearer rather than muddier for you.
TL:DR
···
On 25/03/2016 00:00, Chris Barker - NOAA Federal wrote:
I believe the wheels is all that will be done.
I don't understand. What is "wheels"?
A wheel is a binary package for Python, the use the extension .whl, and
can be installed with pip.
c:\python34\scripts\pip3.exe install -U --pre -f
Index of /Phoenix/snapshot-builds wxPython_Phoenix
I can't make sense of those filenames. I would welcome any pointers
please.
Those are the wheels-- you want one with cp34 or cp35, (cPython 3.4 and 3.5)
HTH,
- CHB
-----
Ignore the names just run:
pip3 install -U --pre -f Index of /Phoenix/snapshot-builds
wxPython_Phoenix
From your command line. If you get command not found try:
c:\python34\scripts\pip3.exe instead of pip3 above.
--
Steve (Gadget) Barnes
Any opinions in this message are my personal opinions and do not reflect
those of my employer.