1 votos

No se puede hacer una `instalación de cerveza` desde un `bash` script

Quiero crear un script para configurar un entorno en un Mac. Aquí hay un ejemplo simple...

#!/bin/bash
brew install gcovr || exit 1
gcovr --version

NOTA: script asume brew se instaló previamente .

Cuando ejecuto el script obtengo un error.

$ ./install
Warning: gcovr 4.1 is already installed and up-to-date
To reinstall 4.1, run `brew reinstall gcovr`
Traceback (most recent call last):
  File "/usr/local/Cellar/gcovr/4.1/libexec/bin/gcovr", line 6, in <module>
    from pkg_resources import load_entry_point
ModuleNotFoundError: No module named 'pkg_resources'

Sin embargo, si lo ejecuto directamente desde la línea de comandos, avanza como se espera.

$ brew install gcovr
Warning: gcovr 4.1 is already installed and up-to-date
To reinstall 4.1, run `brew reinstall gcovr`

Hay que tener en cuenta que el script sí instala gcovr antes de fracasar y abandonar.

2voto

Zak Puntos 111

Parece que este error se debe a que Python está mal configurado.

La respuesta es brew postinstall python3 .

Al buscar en Google, encontré un proyecto independiente que demostraba una cuestión similar .

Esto es lo que he visto en mi máquina:

$ python --version
Python 2.7.10

$ brew install python
Warning: python 3.7.4 is already installed, it's just not linked
You can use `brew link python` to link this version.

$ brew postinstall python3
==> Postinstalling python
==> /usr/local/Cellar/python/3.7.4/bin/python3 -s setup.py --no-user-cfg install
==> /usr/local/Cellar/python/3.7.4/bin/python3 -s setup.py --no-user-cfg install
==> /usr/local/Cellar/python/3.7.4/bin/python3 -s setup.py --no-user-cfg install

Después de correr postinstall no parece que cambie Python

$ python --version
Python 2.7.10

¡Sin embargo, afectó positivamente a Homebrew, y permitió que el scriptse ejecutara con éxito!

$ ./install
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/cask).
No changes to formulae.

Warning: gcovr 4.1 is already installed and up-to-date
To reinstall 4.1, run `brew reinstall gcovr`
gcovr 4.1

Copyright 2013-2018 the gcovr authors
Copyright 2013 Sandia Corporation
Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
the U.S. Government retains certain rights in this software.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X