Installation issues on aarch64 machines
Current Behavior
When trying to install ade-cli
on an aarch64 based machine, pip
fails with the error:
sudo pip3 install -U ade-cli
Collecting ade-cli
Downloading https://files.pythonhosted.org/packages/f9/50/9723fbdce97e3fc86f82ce266ce99a3a183e23257db3bb430fe309d74e0f/ade_cli-3.4.1-py3-none-any.whl
Collecting click>=7.0 (from ade-cli)
Downloading https://files.pythonhosted.org/packages/fa/37/45185cb5abbc30d7257104c434fe0b07e5a195a6847506c074527aa599ec/Click-7.0-py2.py3-none-any.whl (81kB)
100% |████████████████████████████████| 81kB 4.8MB/s
Collecting cchardet (from ade-cli)
Downloading https://files.pythonhosted.org/packages/74/64/3988d388315c1af3e24f447689dadf30edead43366fb2041cb103380b57f/cchardet-2.1.4.tar.gz (648kB)
100% |████████████████████████████████| 655kB 1.1MB/s
Collecting aiodns (from ade-cli)
Downloading https://files.pythonhosted.org/packages/da/01/8f2d49b441573fd2478833bdba91cf0b853b4c750a1fbb9e98de1b94bb22/aiodns-2.0.0-py2.py3-none-any.whl
Collecting aiohttp<3.5.0 (from ade-cli)
Downloading https://files.pythonhosted.org/packages/70/27/6098b4b60a3302a97f8ec97eb85d42f55a2fa904da4a369235a8e3b84352/aiohttp-3.4.4.tar.gz (822kB)
100% |████████████████████████████████| 829kB 844kB/s
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-build-6kuner5x/aiohttp/setup.py", line 13, in <module>
raise RuntimeError("aiohttp 3.x requires Python 3.5.3+")
RuntimeError: aiohttp 3.x requires Python 3.5.3+
This error can be resolved by using a newer version of pip (pip3 install -U pip
). However, then there is an error due to pycares
which comes in as a dependency of aiodns
:
Collecting pycares>=3.0.0 (from aiodns->ade-cli)
...
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-3h77fjpc/pycares/setup.py", line 45, in <module>
zip_safe = False
File "/usr/lib/python3.5/distutils/core.py", line 108, in setup
_setup_distribution = dist = klass(attrs)
File "/home/salus/venv/lib/python3.5/site-packages/setuptools/dist.py", line 269, in __init__
self.fetch_build_eggs(attrs['setup_requires'])
File "/home/salus/venv/lib/python3.5/site-packages/setuptools/dist.py", line 313, in fetch_build_eggs
replace_conflicting=True,
File "/home/salus/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 826, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/home/salus/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1092, in best_match
return self.obtain(req, installer)
File "/home/salus/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1104, in obtain
return installer(requirement)
File "/home/salus/venv/lib/python3.5/site-packages/setuptools/dist.py", line 380, in fetch_build_egg
return cmd.easy_install(req)
File "/home/salus/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 663, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "/home/salus/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 693, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "/home/salus/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 873, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "/home/salus/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1101, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "/home/salus/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 1089, in run_setup
raise DistutilsError("Setup script exited with %s" % (v.args[0],))
distutils.errors.DistutilsError: Setup script exited with error: command 'aarch64-linux-gnu-gcc' failed with exit status 1
Expected Behavior
ade-cli
successfully installs on aarch64 machines
How to reproduce
On an aarch64 system:
python3 -m venv venv
source venv/bin/activate
pip3 install -U ade-cli
# You'll see the first error
pip3 install -U pip
pip3 install -U ade-cli
# You will see the second error
Current workaround
Install with:
pip3 install ade-cli aiohttp==2.3.5 aiodns==1.1.1 pycares==2.2.0