mapnik / python-mapnik

Python bindings for mapnik
GNU Lesser General Public License v2.1
160 stars 91 forks source link

Build/Install from source failing because of missing setuptools dependency #278

Open dwierima-aspentech opened 3 months ago

dwierima-aspentech commented 3 months ago

Hello, I am attempting to install 248003c which is the current version of the master branch. I have mapnik 3.1.0 installed and available on PATH

mapnik-config --version
3.1.0

However, when running pip install . -v I get the following output:

  Running command /usr/bin/python3 /tmp/pip-standalone-pip-l8qo1zte/__env_pip__.zip/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-jjw1jcx0/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- 'setuptools >= 69.0' 'pybind11 >= 2.10.0'
  WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f0b96d30d60>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
  WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f0b96d30400>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
  WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f0b96d30430>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
  WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f0b96d30e50>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
  WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f0b9737fdc0>: Failed to establish a new connection: [Errno -2] Name or service not known')': /simple/setuptools/
  ERROR: Could not find a version that satisfies the requirement setuptools>=69.0 (from versions: none)
  ERROR: No matching distribution found for setuptools>=69.0
  Installing build dependencies ... error
WARNING: Discarding file:///home/<username>/mapnik/python-mapnik. Command errored out with exit status 1: /usr/bin/python3 /tmp/pip-standalone-pip-l8qo1zte/__env_pip__.zip/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-jjw1jcx0/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- 'setuptools >= 69.0' 'pybind11 >= 2.10.0' Check the logs for full command output.
ERROR: Command errored out with exit status 1: /usr/bin/python3 /tmp/pip-standalone-pip-l8qo1zte/__env_pip__.zip/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-jjw1jcx0/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- 'setuptools >= 69.0' 'pybind11 >= 2.10.0' Check the logs for full command output.

It seems like pip is trying to reach out to the internet to install setuptools >= 69.0. This server doesn't have access to the internet, so I would expect internet connections to fail. However, pip shows that I have setuptools 70.0 installed, which should satisfy the dependency:

pip list installed | grep setuptools
setuptools           70.0.0

I have also tried installing this version using the 'old' method, python setup.py install, which also failed. However given that this method was removed from the README, makes me think the 'old' method isn't supported anymore. I can provide the output of this method if it would be useful for troubleshooting.

dwierima-aspentech commented 3 months ago

Update to this issue: I have re-tried building from source on a server with internet connection and after upgrading to mapnik 4.0.0. I got the same error as described in this issue: https://github.com/mapnik/python-mapnik/issues/279