This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author multimiler
Recipients multimiler
Date 2017-11-01.02:08:44
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1509502125.3.0.213398074469.issue31916@psf.upfronthosting.co.za>
In-reply-to
Content
I am building python from source for installation at /opt/python-3.6.3.  The result of the build will be installed in /somewhere/deb-pkg-build-dir.  I configure, build, and install, the package as follows:

./configure --prefix=/opt/python-$VER --enable-optimizations --with-ensurepip=install
make
make install DESTDIR=/somewhere/deb-pkg-build-dir

At the very end of the build log I find:

Requirement already satisfied: setuptools in /opt/python-3.6.3/lib/python3.6/site-packages

As a result PIP is not installed.  This is an error.  The pip installation process should be looking in $(DESTDIR)/opt/python-3.6.3.  Instead it is looking at /opt/python-3.6.3/... which is the python installation on the current build host -- NOT INSTALLED BY THIS BUILD.

In the top-level Makefile.pre I find the following that runs ensurepip to install pip:

install:  commoninstall bininstall maninstall
        if test "x$(ENSUREPIP)" != "xno"  ; then \
                case $(ENSUREPIP) in \
                        upgrade) ensurepip="--upgrade" ;; \
                        install|*) ensurepip="" ;; \
                esac; \
                $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
                        $$ensurepip --root=$(DESTDIR)/ ; \
        fi

As you can see $(DESTDIR) is passed into ensurepip, but it is never used when checking for pip existence.
History
Date User Action Args
2017-11-01 02:08:45multimilersetrecipients: + multimiler
2017-11-01 02:08:45multimilersetmessageid: <1509502125.3.0.213398074469.issue31916@psf.upfronthosting.co.za>
2017-11-01 02:08:45multimilerlinkissue31916 messages
2017-11-01 02:08:44multimilercreate