title: Installation using setup.py is now impossible on macOS Big Sur
body: <p>I have 2 of my projects that install perfectly fine on ubuntu, both require python3.8, both are installable using <code>python setup.py install</code> and I occasionally uninstall / install them from / to virtual environments as well as globally for testing purposes. Recently, all kinds of troubles and error messages started to occur not following any special event, I just woke up one day, and tried to install one of them, I got an error, then I tried the other and got another error. I will include both <code>setup.py</code> scripts and show the steps I follow <strong>on macOS Big Sur 11.0</strong> to reproduce the results, given that both install perfectly fine on Ubuntu with the same list of respective dependencies.</p>
  <p><strong>Versions:</strong></p>
  <pre><code>python: 3.8.6
  pip:    20.3.1
  macOS:  11.0.1
  </code></pre>
  <p><strong>Project 1:</strong></p>
  <p><code>requirements.txt</code></p>
  <pre><code>imagesize==1.2.0
  numpy==1.18.5
  pandas==1.1.4
  seaborn==0.11.0
  tensorflow==2.3.1
  matplotlib==3.3.3
  lxml==4.6.2
  imgaug==0.4.0
  tensorflow-addons==0.11.2
  opencv-python-headless==4.4.0.46
  imagecorruptions==1.1.2
  configparser~=5.0.1
  scipy==1.5.4
  PyQt5==5.15.2
  tabulate==0.8.7
  ipykernel==5.3.4
  </code></pre>
  <p><code>setup.py</code></p>
  <pre><code>from setuptools import setup, find_packages
  
  install_requires = [dep.strip() for dep in open('requirements.txt')]
  
  setup(
      name='project1',
      version='1.0',
      packages=find_packages(),
      url='url',
      license='MIT',
      author='author',
      author_email='email@domain',
      description='description goes here',
      install_requires=install_requires,
      python_requires='&gt;=3.8',
      entry_points={
          'console_scripts': [
              'some_entry_point',
          ],
      },
  )
  </code></pre>
  <p><strong>Notes:</strong></p>
  <ul>
  <li>I will truncate logs for character limits.</li>
  <li>The attempts below are done within a virtualenv</li>
  <li>All kinds of problems do not occur if I just use <code>pip install -r requirements</code></li>
  <li>Installation works perfectly fine on Ubuntu and used to work perfectly fine on macOS even after I upgraded to Big Sur, it just suddenly decided to never work again.</li>
  <li>python is installed using <code>brew install python@3.8</code></li>
  </ul>
  <p><strong>Attempt 1:</strong></p>
  <pre><code>virtualenv proj1
  source proj1/bin/activate
  python setup.py install
  </code></pre>
  <p><strong>Result:</strong></p>
  <pre><code>Searching for PyQt5==5.15.2
  Reading https://pypi.org/simple/PyQt5/
  Downloading https://files.pythonhosted.org/packages/28/6c/640e3f5c734c296a7193079a86842a789edb7988dca39eab44579088a1d1/PyQt5-5.15.2.tar.gz#sha256=372b08dc9321d1201e4690182697c5e7ffb2e0770e6b4a45519025134b12e4fc
  Best match: PyQt5 5.15.2
  Processing PyQt5-5.15.2.tar.gz
  error: Couldn't find a setup script in /var/folders/hr/61r_7jcx2r3cnklwrr2zwbqw0000gn/T/easy_install-sl9y34mj/PyQt5-5.15.2.tar.gz
  </code></pre>
  <p><strong>Attempt 2: (I install pyqt using pip)</strong></p>
  <pre><code>pip install pyqt5==5.15.2 # success
  python setup.py install # fail
  </code></pre>
  <p><strong>Result:</strong></p>
  <pre><code>No module named numpy.
  </code></pre>
  <p><strong>Attempt 3: (add <code>setup_requires=['numpy==1.18.5']</code> to <code>setup()</code>)</strong></p>
  <pre><code>python setup.py install
  </code></pre>
  <p><strong>Result:</strong></p>
  <pre><code>numpy.distutils.system_info.NotFoundError: No lapack/blas resources found. Note: Accelerate is no longer supported.
  
  During handling of the above exception, another exception occurred:
  
  # Traceback goes here
  
  RuntimeError: implement_array_function method already has a docstring
  </code></pre>
  <p><strong>Attempt 4:</strong></p>
  <p>I checked this <a href="https://github.com/scipy/scipy/issues/13102" rel="nofollow noreferrer">issue</a> and there is nothing helpful yet so I manually install numpy and scipy:</p>
  <pre><code>pip install numpy==1.18.5 scipy # success
  python setup.py install # fail
  </code></pre>
  <p><strong>Result:</strong></p>
  <pre><code>ModuleNotFoundError: No module named 'skbuild'
  </code></pre>
  <p><strong>Attempt 5:</strong></p>
  <pre><code>pip install scikit-build==0.11.1 # success
  python setup.py install # fail
  </code></pre>
  <p><strong>Result:</strong></p>
  <pre><code>error: Setup script exited with Problem with the CMake installation, aborting build. CMake executable is cmake
  </code></pre>
  <p><strong>Attempt 6:</strong></p>
  <p>I checked the issue <a href="https://github.com/scikit-build/cmake-python-distributions/issues/76" rel="nofollow noreferrer">here</a> and accordingly:</p>
  <pre><code>pip install cmake # success
  python setup.py install 
  </code></pre>
  <p>Opencv is being built, I'm not sure why or what triggered the build so I aborted and manually installed opencv using pip:</p>
  <pre><code>pip install opencv-python-headless==4.4.0.46 # success
  python setup.py install # fail
  </code></pre>
  <p><strong>Result:</strong></p>
  <pre><code>Could not find suitable distribution for Requirement.parse('tensorflow-addons==0.11.2')
  </code></pre>
  <p><strong>Attempt 7:</strong></p>
  <pre><code>pip install tensorflow-addons==0.11.2 # success
  python setup.py install 
  </code></pre>
  <p>Again lxml is being built, I don't know how or why, so I manually install it and:</p>
  <pre><code>pip install lxml==4.6.2 # success
  python setup.py install # fail
  </code></pre>
  <p><strong>Result:</strong></p>
  <pre><code>Running matplotlib-3.3.3/setup.py -q bdist_egg --dist-dir /var/folders/hr/61r_7jcx2r3cnklwrr2zwbqw0000gn/T/easy_install-q32mufo3/matplotlib-3.3.3/egg-dist-tmp-_js7sem9
  UPDATING build/lib.macosx-11.0-x86_64-3.8/matplotlib/_version.py
  set build/lib.macosx-11.0-x86_64-3.8/matplotlib/_version.py to '3.3.3'
  error: Setup script exited with error: Failed to download FreeType. Please download one of ['https://downloads.sourceforge.net/project/freetype/freetype2/2.6.1/freetype-2.6.1.tar.gz', 'https://download.savannah.gnu.org/releases/freetype/freetype-2.6.1.tar.gz'] and extract it into build/freetype-2.6.1 at the top-level of the source repository.
  </code></pre>
  <p><strong>Attempt 8:</strong></p>
  <pre><code>pip install matplotlib==3.3.3 # success
  python setup.py install # fail
  </code></pre>
  <p><strong>Result:</strong></p>
  <pre><code>Could not find suitable distribution for Requirement.parse('tensorflow==2.3.1')
  </code></pre>
  <p><strong>Attempt 9:(already more than 75% of  the requirements were already installed manually using pip in the previous attempts)</strong></p>
  <pre><code>pip install tensorflow==2.3.1 # success
  python setup.py install # fail
  </code></pre>
  <p><strong>Result:(pandas fails to install)</strong></p>
  <pre><code>RuntimeError: Cannot cythonize without Cython installed.
  </code></pre>
  <p><strong>Attempt 10: (I manually install cython)</strong></p>
  <pre><code>pip install cython # success
  python setup.py install
  </code></pre>
  <p>Again pandas for some reason is being built, so I manually install it and the list goes on ...
  I think after this simple demonstration, I don't even need to replicate the steps of the second project however here are its requirements and I pretty much get a variation of the same problems shown above.</p>
  <p><code>requirements.txt</code> for project2</p>
  <pre><code>oauth2client==4.1.3
  gcloud==0.18.3
  pyarrow==2.0.0
  requests==2.24.0
  pandas==1.1.4
  httplib2==0.15.0
  TA-Lib==0.4.19
  matplotlib==3.3.2
  </code></pre>
  <p>matplotlib fails first, followed by ta-lib (given that I run <code>brew install ta-lib</code> before then) and the list goes on ...</p>