pybombs icon indicating copy to clipboard operation
pybombs copied to clipboard

Python 2.x and 3.x fails on macOS

Open citizenrich opened this issue 5 years ago • 1 comments

I've followed the instructions to install gnuradio with support for python 3: https://github.com/gnuradio/gnuradio#pybombs-with-support-of-python-3x

Pybombs fails to install. The errors using -vv are:

$ pybombs -vv install gnuradio
PyBOMBS.ConfigManager - DEBUG - Reading config info from file: /etc/pybombs/config.yml
PyBOMBS.ConfigManager - DEBUG - Parsing config file failed (/etc/pybombs/config.yml).
PyBOMBS.ConfigManager - DEBUG - Reading config info from file: /Users/richard/.pybombs/config.yml
PyBOMBS.ConfigManager - DEBUG - New config items: ordereddict([('default_prefix', '/Users/richard/gnuradio'), ('makewidth', 4), ('packagers', 'brew,pymod,pip,pkgconfig,cmd'), ('git-cache', '/Users/richard/.pybombs/gitcache'), ('elevate_pre_args', ['sudo', '-H'])])
PyBOMBS.ConfigManager - DEBUG - Template directory: /usr/local/lib/python3.7/site-packages/pybombs/templates
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Inspecting config file: /Users/richard/.pybombs/config.yml
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Using default_prefix as prefix (/Users/richard/gnuradio)
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Choosing default prefix config dir: /Users/richard/gnuradio/.pybombs
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Prefix configuration file not found: /Users/richard/gnuradio/.pybombs/config.yml, assuming empty.
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Prefix source dir is: /Users/richard/gnuradio/src
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Source dir does not exist.
PyBOMBS.Inventory - DEBUG - Trying to load inventory file /Users/richard/gnuradio/.pybombs/inventory.yml...
PyBOMBS.ConfigManager - DEBUG - Full list of recipe locations: ['/Users/richard/.pybombs/recipes/gr-etcetera', '/Users/richard/.pybombs/recipes/gr-recipes', '/usr/local/lib/python3.7/site-packages/pybombs/recipes']
PyBOMBS.ConfigManager - DEBUG - Named recipe locations: {'gr-etcetera': 'git+https://github.com/gnuradio/gr-etcetera.git', 'gr-recipes': 'git+https://github.com/gnuradio/gr-recipes.git'}
PyBOMBS.ConfigManager - DEBUG - Python version derived from current interpreter.
PyBOMBS.ConfigManager - INFO - Prefix Python version is: 3.7.2
PyBOMBS - INFO - PyBOMBS Version 2.3.3
...
PyBOMBS.ReqScanner - OBNOXIOUS - Adding package with name PyGTK
PyBOMBS.ReqScanner - OBNOXIOUS - Adding version comparator >=
PyBOMBS.ReqScanner - OBNOXIOUS - Adding version number 2.17
PyBOMBS.ReqScanner - OBNOXIOUS - End of requirements list
PyBOMBS.ReqScanner - OBNOXIOUS - Done parsing requirements string `PyGTK >= 2.17`
PyBOMBS.Packager.pip - OBNOXIOUS - Calling ev for recursive satisfier rule evaluation
PyBOMBS.Packager.pip - DEBUG - Calling `pip3 install PyGTK'
PyBOMBS.monitor_process() - DEBUG - Running with elevated privileges.
PyBOMBS._process_thread() - DEBUG - Executing command `sudo -H pip3 install PyGTK'
Collecting PyGTK
  Using cached https://files.pythonhosted.org/packages/7c/18/fa4f2de77500dd62a314fd845ff6e903ac2ce551164cb421c5750969f799/pygtk-2.24.0.tar.bz2
    Complete output from command python setup.py egg_info:
    ********************************************************************
    * Building PyGTK using distutils is only supported on windows. *
    * To build PyGTK in a supported way, read the INSTALL file.    *
    ********************************************************************

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/tmp/pip-install-285_w0pi/PyGTK/
...
PyBOMBS.Recipe[python] - OBNOXIOUS - Loaded recipe - python
PyBOMBS.get_recipe - OBNOXIOUS - Woohoo, this one's already cached (python)
PyBOMBS.get_recipe - OBNOXIOUS - Woohoo, this one's already cached (python)
PyBOMBS.Packager.brew - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.Packager.pymod - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.Packager.pip - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.Packager.pkgconfig - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.Packager.cmd - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.PackageManager - DEBUG - Package python is not installable.
PyBOMBS.install_manager - ERROR - Package has no install method: python
PyBOMBS - DEBUG - Unresolved install path.

Edit: added config info from invocation of pybombs -vv install gnuradio

citizenrich avatar Mar 09 '19 16:03 citizenrich

Edit: Linking to this issue: https://github.com/gnuradio/pybombs/issues/485 Update: Fails with Python 2.7 as well.

$ pybombs -vv prefix init ~/prefix -a myprefix -R gnuradio-default
PyBOMBS.ConfigManager - DEBUG - Reading config info from file: /etc/pybombs/config.yml
PyBOMBS.ConfigManager - DEBUG - Parsing config file failed (/etc/pybombs/config.yml).
PyBOMBS.ConfigManager - DEBUG - Reading config info from file: /Users/richard/.pybombs/config.yml
PyBOMBS.ConfigManager - DEBUG - New config items: ordereddict([('git-cache', '/Users/richard/.pybombs/gitcache'), ('elevate_pre_args', ['sudo', '-H']), ('makewidth', 4), ('packagers', 'brew,pymod,pip,pkgconfig,cmd'), ('default_prefix', 'myprefix')])
PyBOMBS.ConfigManager - DEBUG - Template directory: /usr/local/lib/python2.7/site-packages/pybombs/templates
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Inspecting config file: /Users/richard/.pybombs/config.yml
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Resolving prefix alias `myprefix'.
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Using default_prefix as prefix (/Users/richard/prefix)
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Choosing default prefix config dir: /Users/richard/prefix/.pybombs
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Inspecting config file: /Users/richard/prefix/.pybombs/config.yml
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Prefix source dir is: /Users/richard/prefix/src
PyBOMBS.Inventory - DEBUG - Trying to load inventory file /Users/richard/prefix/.pybombs/inventory.yml...
PyBOMBS.ConfigManager.PrefixInfo - DEBUG - Prefix-local recipe dir is: /Users/richard/prefix/.pybombs/recipes
PyBOMBS.ConfigManager - DEBUG - Reading config info from file: /Users/richard/prefix/.pybombs/config.yml
PyBOMBS.ConfigManager - DEBUG - New config items: {}
PyBOMBS.ConfigManager - DEBUG - Full list of recipe locations: ['/Users/richard/prefix/.pybombs/recipes', '/Users/richard/.pybombs/recipes/gr-recipes', '/Users/richard/.pybombs/recipes/gr-etcetera', '/usr/local/lib/python2.7/site-packages/pybombs/recipes']
PyBOMBS.ConfigManager - DEBUG - Named recipe locations: {'gr-etcetera': 'git+https://github.com/gnuradio/gr-etcetera.git', 'gr-recipes': 'git+https://github.com/gnuradio/gr-recipes.git'}
PyBOMBS.ConfigManager - DEBUG - Python version derived from current interpreter.
PyBOMBS.ConfigManager - INFO - Prefix Python version is: 2.7.16
PyBOMBS - INFO - PyBOMBS Version 2.3.3
...
PyBOMBS.PackageManager - DEBUG - Using packager pip
PyBOMBS.Packager.pip - OBNOXIOUS - install(pygtk, static=False)
PyBOMBS.ReqScanner - OBNOXIOUS - Adding package with name PyGTK
PyBOMBS.ReqScanner - OBNOXIOUS - Adding version comparator >=
PyBOMBS.ReqScanner - OBNOXIOUS - Adding version number 2.17
PyBOMBS.ReqScanner - OBNOXIOUS - End of requirements list
PyBOMBS.ReqScanner - OBNOXIOUS - Done parsing requirements string `PyGTK >= 2.17`
PyBOMBS.Packager.pip - OBNOXIOUS - Calling ev for recursive satisfier rule evaluation
PyBOMBS.Packager.pip - DEBUG - Calling `pip2 install PyGTK'
PyBOMBS.monitor_process() - DEBUG - Running with elevated privileges.
PyBOMBS._process_thread() - DEBUG - Executing command `sudo -H pip2 install PyGTK'
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Collecting PyGTK
  Using cached https://files.pythonhosted.org/packages/7c/18/fa4f2de77500dd62a314fd845ff6e903ac2ce551164cb421c5750969f799/pygtk-2.24.0.tar.bz2
    Complete output from command python setup.py egg_info:
    ********************************************************************
    * Building PyGTK using distutils is only supported on windows. *
    * To build PyGTK in a supported way, read the INSTALL file.    *
    ********************************************************************

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/tmp/pip-install-tyJQIB/PyGTK/
PyBOMBS.monitor_process() - DEBUG - Thread signaled termination or returned
PyBOMBS.monitor_process() - DEBUG - Return value: 1
...
PyBOMBS.Packager.pip - DEBUG - Calling `pip2 install pycairo'
PyBOMBS.monitor_process() - DEBUG - Running with elevated privileges.
PyBOMBS._process_thread() - DEBUG - Executing command `sudo -H pip2 install pycairo'
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Collecting pycairo
  Using cached https://files.pythonhosted.org/packages/a6/54/23d6cf3e8d8f1eb30e0e58f171b6f62b2ea75c024935492373639a1a08e4/pycairo-1.18.0.tar.gz
Building wheels for collected packages: pycairo
  Building wheel for pycairo (setup.py) ... error
  Complete output from command /usr/local/opt/python@2/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/private/tmp/pip-install-hhtcO3/pycairo/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /private/tmp/pip-wheel-swAasD --python-tag cp27:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.14-x86_64-2.7
  creating build/lib.macosx-10.14-x86_64-2.7/cairo
  copying cairo/__init__.py -> build/lib.macosx-10.14-x86_64-2.7/cairo
  copying cairo/__init__.pyi -> build/lib.macosx-10.14-x86_64-2.7/cairo
  copying cairo/py.typed -> build/lib.macosx-10.14-x86_64-2.7/cairo
  running build_ext
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  Package 'libffi', required by 'gobject-2.0', not found
  Command '['pkg-config', '--print-errors', '--exists', 'cairo >= 1.13.1']' returned non-zero exit status 1

  ----------------------------------------
  Failed building wheel for pycairo
  Running setup.py clean for pycairo
Failed to build pycairo
Installing collected packages: pycairo
  Running setup.py install for pycairo ... error
    Complete output from command /usr/local/opt/python@2/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/private/tmp/pip-install-hhtcO3/pycairo/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /private/tmp/pip-record-N62QMi/install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.14-x86_64-2.7
    creating build/lib.macosx-10.14-x86_64-2.7/cairo
    copying cairo/__init__.py -> build/lib.macosx-10.14-x86_64-2.7/cairo
    copying cairo/__init__.pyi -> build/lib.macosx-10.14-x86_64-2.7/cairo
    copying cairo/py.typed -> build/lib.macosx-10.14-x86_64-2.7/cairo
    running build_ext
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    Package 'libffi', required by 'gobject-2.0', not found
    Command '['pkg-config', '--print-errors', '--exists', 'cairo >= 1.13.1']' returned non-zero exit status 1

    ----------------------------------------
Command "/usr/local/opt/python@2/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/private/tmp/pip-install-hhtcO3/pycairo/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /private/tmp/pip-record-N62QMi/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/tmp/pip-install-hhtcO3/pycairo/
PyBOMBS.monitor_process() - DEBUG - Thread signaled termination or returned
PyBOMBS.monitor_process() - DEBUG - Return value: 1
...
PyBOMBS.Packager.brew - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.Packager.pymod - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.Packager.pip - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.Packager.pkgconfig - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.Packager.cmd - OBNOXIOUS - exists(python)
PyBOMBS.ReqScanner - OBNOXIOUS - Empty requirements string.
PyBOMBS.PackageManager - DEBUG - Package python is not installable.
PyBOMBS.install_manager - ERROR - Package has no install method: python
PyBOMBS - DEBUG - Unresolved install path.

citizenrich avatar Mar 19 '19 00:03 citizenrich

Closing as stale.

citizenrich avatar Jan 04 '23 03:01 citizenrich