Hussam F. Alkdary
Hussam F. Alkdary

Reputation: 727

ERROR: No matching distribution found for Cython

I'm traying to build android app with buildozer and kivy on ubuntu bash on widows 10 but I'm getting an error like this

 ERROR: Could not find a version that satisfies the requirement Cython (from versions: none)
ERROR: No matching distribution found for Cython

I don't knew what's the problem and how I can fix it please help

the full log

[INFO]:    -> directory context /mnt/c/users/husam/kivy_apk/.buildozer/android/platform/build-armeabi-v7a/build
[INFO]:    -> running python3 -m venv venv


[INFO]:    Upgrade pip to latest version
[INFO]:    -> running bash -c source venv/bin/activate && pip install -U pip
[INFO]:    Install Cython in case one of the modules needs it to build
[INFO]:    -> running bash -c venv/bin/pip install Cython
Exception in thread background thread for pid 1777:
Traceback (most recent call last):
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python3.6/dist-packages/sh-1.12.14-py3.6.egg/sh.py", line 1540, in wrap
    fn(*args, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/sh-1.12.14-py3.6.egg/sh.py", line 2459, in background_thread
    handle_exit_code(exit_code)
  File "/usr/local/lib/python3.6/dist-packages/sh-1.12.14-py3.6.egg/sh.py", line 2157, in fn
    return self.command.handle_command_exit_code(exit_code)
  File "/usr/local/lib/python3.6/dist-packages/sh-1.12.14-py3.6.egg/sh.py", line 815, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1:

  RAN: /bin/bash -c venv/bin/pip install Cython

  STDOUT:
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting Cython
  WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/cython/
  WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/cython/
  WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/cython/
  WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/cython/
  WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/cython/
  Could not fetch URL https://pypi.org/simple/cython/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/cython/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) - skipping
  ERROR: Could not find a version that satisfies the requirement Cython (from versions: none)
ERROR: No matching distribution found for Cython
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) - skipping

Upvotes: 3

Views: 12392

Answers (3)

SohailAQ
SohailAQ

Reputation: 1040

This happens when you do not include libssl-dev during the installation of buildozer dependences.

This link tells the dependences that are necessary for buildozer. So the procedure to install all the dependences necessary would be :

sudo apt update
sudo apt install -y git zip unzip openjdk-8-jdk python3-pip autoconf libtool pkg-config zlib1g-dev libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev
pip3 install --user --upgrade Cython==0.29.19 virtualenv  # the --user should be removed if you do this in a venv

# add the following line at the end of your ~/.bashrc file
export PATH=$PATH:~/.local/bin/

An Important thing to note

If you did not install this (libssl-dev) buildozer dependency, initially and have already executed

buildozer android debug deploy run

just adding this dependency using

sudo apt-get install libssl-dev

and running buildozer android debug deploy run will throw out the same error again. So execute this instead

sudo apt-get install libssl-dev
buildozer android clean

Now you should be good to go.

Upvotes: 1

Irurik Soft Labs
Irurik Soft Labs

Reputation: 781

Had the same issue on CentOS 7. Installing ssl devel packages resolved this. Follow following commands

sudo yum install openssl-devel buildozer android clean buildozer android debug deploy run

Upvotes: 0

Paul Radvan
Paul Radvan

Reputation: 323

Had the same issue on my Ubuntu VM. Installing libssl-dev solved it for me.

sudo apt-get update
sudo apt-get install libssl-dev

Upvotes: 4

Related Questions