diff options
author | Xi Ruoyao <xry111@xry111.site> | 2022-11-11 00:36:33 +0800 |
---|---|---|
committer | Xi Ruoyao <xry111@xry111.site> | 2022-11-11 01:31:54 +0800 |
commit | 22f5a1a7316b752b498c65a24a7c776d86d1b03b (patch) | |
tree | b39351b8262c620b19203c25efbac2fef2961dbd | |
parent | 799c42486a162131ce035af10fc5be0ee51c6d26 (diff) |
wheel: build and install with temporary Python packages
-rw-r--r-- | chapter08/wheel.xml | 37 | ||||
-rw-r--r-- | packages.ent | 14 |
2 files changed, 38 insertions, 13 deletions
diff --git a/chapter08/wheel.xml b/chapter08/wheel.xml index 0f6ba7cb6..ce87e24a9 100644 --- a/chapter08/wheel.xml +++ b/chapter08/wheel.xml @@ -40,39 +40,52 @@ <sect2 role="installation"> <title>Installation of Wheel</title> + <para>The installation of wheel needs pip and setuptools. + Prepare the temporary copies of them:</para> + +<screen><userinput remap="pre">tar xf ../pip-&pip-version;.tar.gz +tar xf ../setuptools-&setuptools-version;.tar.gz</userinput></screen> + + <para>Build the wheel package. The building process needs pip, + setuptools, and wheel itself, set <envar>PYTHONPATH</envar> so + <command>python3</command> will be able to find them:</para> + +<screen><userinput remap="make">PYTHONPATH=pip-&pip-version;/src:setuptools-&setuptools-version;:src \ +python3 -m pip wheel -w dist --no-build-isolation --no-deps $PWD</userinput></screen> + <para>Install wheel with the following command:</para> -<screen><userinput remap="install">pip3 install --no-index $PWD</userinput></screen> +<screen><userinput remap="install">PYTHONPATH=pip-&pip-version;/src:setuptools-&setuptools-version;:src \ +python3 -m pip install --no-index --find-links dist wheel --force-reinstall</userinput></screen> <variablelist> - <title>The meaning of the pip3 options:</title> + <title>The meaning of the install parameters:</title> <varlistentry> - <term><command>install</command></term> + <term><parameter>-w dist</parameter></term> <listitem> - <para>Install the package.</para> + <para>Put the created wheel into the + <filename class='directory'>dist</filename> directory.</para> </listitem> </varlistentry> <varlistentry> - <term><parameter>--no-index</parameter></term> + <term><parameter>--find-links dist</parameter></term> <listitem> - <para>Prevent pip from fetching files from the online package - repository (PyPI). If packages are installed in the correct order, - then it won't need to fetch any files in the first place, but this - option adds some safety in case of user error.</para> + <para>Install wheel from the + <filename class='directory'>dist</filename> directory.</para> </listitem> </varlistentry> <varlistentry> - <term><parameter>$PWD</parameter></term> + <term><parameter>--force-reinstall</parameter></term> <listitem> - <para>Look for files to install in the current working directory.</para> + <para>Install the package even if it can be found in + <envar>PYTHONPATH</envar>.</para> </listitem> </varlistentry> </variablelist> - </sect2> <sect2 id="contents-wheel" role="content"> diff --git a/packages.ent b/packages.ent index 54826da17..7028fd870 100644 --- a/packages.ent +++ b/packages.ent @@ -602,6 +602,12 @@ <!ENTITY python-docs-md5 "b740495c9f6714e0998894ed8d1cb379"> <!ENTITY python-docs-size "7,484 KB"> +<!ENTITY pip-version "22.3.1"> +<!ENTITY pip-size "2,032 KB"> +<!ENTITY pip-url "&pypi-src;/p/pip/pip-&pip-version;.tar.gz"> +<!ENTITY pip-md5 "996f58a94fe0b8b82b6795c42bd171ba"> +<!ENTITY pip-home "&pypi-home;/pip/"> + <!ENTITY readline-version "8.2"> <!ENTITY readline-soversion "8.2"><!-- used for stripping --> <!ENTITY readline-size "2,973 KB"> @@ -621,6 +627,12 @@ <!ENTITY sed-fin-du "31 MB"> <!ENTITY sed-fin-sbu "0.4 SBU"> +<!ENTITY setuptools-version "65.5.1"> +<!ENTITY setuptools-size "2,556 KB"> +<!ENTITY setuptools-url "&pypi-src;/s/setuptools/setuptools-&setuptools-version;.tar.gz"> +<!ENTITY setuptools-md5 "3f062858ddfb5efa564c9c02a30cb104"> +<!ENTITY setuptools-home "&pypi-home;/setuptools/"> + <!ENTITY shadow-version "4.12.3"> <!ENTITY shadow-size "1,707 KB"> <!ENTITY shadow-url "&github;/shadow-maint/shadow/releases/download/&shadow-version;/shadow-&shadow-version;.tar.xz"> @@ -733,7 +745,7 @@ <!ENTITY wheel-url "&pypi-src;/w/wheel/wheel-&wheel-version;.tar.gz"> <!ENTITY wheel-md5 "f490f1399e5903706cb1d4fbed9ecb28"> <!ENTITY wheel-home "&pypi-home;/wheel/"> -<!ENTITY wheel-fin-du "956 KB"> +<!ENTITY wheel-fin-du "28,700 KB"> <!ENTITY wheel-fin-sbu "less than 0.1 SBU"> <!ENTITY xml-parser-version "2.46"> |