31 votos

¿Instalar QGIS3 en Mac?

El instalador de Kyngchaos no encuentra python3. He instalado python3 usando HomeBrew y no se encuentra en /usr/local/Cellar/python/3.6.4_4/Frameworks/Python.framework/Versions/3.6/bin/python3.6

¿Cómo le digo al instalador de QGIS que reconozca que python3 está instalado?

Había instalado previamente GDAL usando HomeBrew, así que traté de reinstalar (o instalar otra versión donde sea que termine) pensando que podría ayudar con la situación, pero el instalador de QGIS3 todavía no puede encontrar python 3.

El error de instalación es una ventana emergente que aparece en cuanto se abre el instalador y dice "python3 QGIS requiere Python 3.6".

Para los usuarios que no son de Mac, la mayoría parece confiar en Kyngchaos para proporcionar un instalador para QGIS y él acaba de publicar el instalador para la v3.

Actualización: he respondido a mis propias preguntas a continuación. No utilice HomeBrew a menos que usted sabe lo suficiente como para apuntar el instalador QGIS / QGIS a la versión correcta (que ciertamente no lo hago), pero el uso de la versión del instalador python3 vinculado en el ReadMe.

0 votos

¿Dónde están los instaladores de Kyngchaos? No los encuentro en ningún sitio.

0 votos

Como no ha actualizado el enlace, supuse que era kyngchaos.com/files/software/qgis/QGIS-3.0.0-1.dmg

0 votos

Todavía no se promociona en su página web, ¿verdad?

37voto

Joe P Puntos 180

NUEVA ACTUALIZACIÓN

QGIS3 puede instalarse ahora desde osgeo que ahorra el tener que lidiar con los enlaces simbólicos de Python... por ejemplo

brew tap osgeo/osgeo4mac
brew install qgis

A continuación, escriba qgis en el terminal para lanzarlo, y luego anclar el icono del menú del dock para simplificar el lanzamiento en el futuro.

Tenga en cuenta que los registros de la consola de instalación también proporcionarán un ejemplo de cómo hacer un enlace simbólico qgis a su directorio de aplicaciones.

Debido a algunos problemas actuales, puede ser necesario ejecutar ulimit -n 1024 desde el terminal como una solución para el Too many open files @ rb_sysopen - /usr/local/var/homebrew/locks/xmlto.formula.lock error. También puede ser necesario ejecutar brew install qgis más de una vez para que todos los paquetes se encuentren.

ACTUALIZACIÓN ANTIGUA

(Este método requiere la actualización de los enlaces simbólicos cuando cambian las versiones... es decir, no es lo ideal)

Para los que usan homebrew, probablemente sea mejor usar sólo un symlink, de lo contrario podrían surgir todo tipo de estragos, por ejemplo, el binario oficial de python modificará su ~./bash_profile para que python3 y pip3 ya no apuntan a la cerveza...

En mi caso, he enlazado la versión homebrew (siguiendo la línea de la respuesta proporcionada por @Evenfire):

sudo ln -s /usr/local/Cellar/python/3.6.5/Frameworks/Python.framework /Library/Frameworks/Python.framework

QGIS3 se quejó entonces de que faltaban ciertos paquetes de python, que se pueden instalar con pip3, por ejemplo

pip3 install owslib PyYaml psycopg2 jinja2 pygments plotly

También podría quejarse de gdal En mi caso, simplemente utilicé la cerveza:

brew install gdal

ORIGINAL

(Este método no se recomienda para los usuarios de cerveza).

También tengo instalado python3 a través de brew y me encuentro con la misma dificultad.

Lo que parece funcionar es instalar la versión oficial binarios python que instalan a /Library/Frameworks/Python.framework/Versions/3.6/bin/python3 .

Por ensayo y error, esto tiene que hacerse antes de la 1 Install GDAL Complete.pkg que, de lo contrario, se instala contra el python equivocado y QGIS 3 se quejará de que faltan paquetes de python.

Aquellos que tengan tiempo para experimentar podrían probar con los enlaces simbólicos para moverse directamente usando el brew (u otro) python3.

0 votos

Gracias. La instalación de python justo antes del "1 Install GDAL Complete.pkg" me ha servido y ha solucionado el error "module osgeo not found".

0 votos

¿Tiene GDAL también instalado con homebrew ? He creado el enlace simbólico para python pero el instalador pide GDAL2.2 que he instalado con homebrew .

0 votos

En mi caso no tengo gdal instalado con homebrew. Tengo entendido que QGIS depende específicamente de la versión de KyngChaos (¡desgraciadamente!). Así que podría ser necesario instalar el gdal proporcionado con QGIS y entonces podría funcionar.

29voto

Umair Ahmed Puntos 4020

Si ha instalado Python3 con Homebrew puede utilizar enlaces simbólicos para cumplir con las necesidades del instalador (como sugiere @shongololo).

Al parecer, el instalador necesita Python3 instalado en (gracias @shongololo): /Library/Frameworks/Python.framework/Versions/3.6/bin/python3 .

(Instala python3 usando Homebrew para seguir esta parte)

Encuentre el Cellar en su máquina. El mío está en: /usr/local/Cellar . A continuación, busque este directorio: /usr/local/Cellar/python3/3.x.y_z/Frameworks/Python.framework (donde 3.x.y_z es la versión de python3 que quieres usar, para mí es 3.6.4_2 ). Este es el directorio que queremos que encuentre el instalador. Necesitamos enlazar a este directorio desde el directorio que el instalador está buscando haciendo un Enlace Simbólico.

Utilizando el ln comando ( ln -s TARGET_FILE_TO_LINK_TO LINK_NAME ): ln -s /usr/local/Cellar/python3/3.x.y_z/Frameworks/Python.framework /Library/Frameworks/Python.framework hará el truco. Ciertamente, es necesario sudo .

Esto me ha funcionado.

(La "bodega" es el lugar donde van todos tus "barriles". Homebrew instala los paquetes en su propio directorio (en la Bodega) y luego hace un enlace simbólico con sus archivos en /usr/local/. [de Blog de Ryan Kulla ])

0 votos

Gracias por esta información. Ya lo he arreglado con el instalador "por defecto". Como no necesito Python para nada más me servirá. En general prefiero usar Homebrew por coherencia. Y Apple tiene la v2 instalada por defecto. ¿Cuáles son las ventajas de usar los dos instaladores (Homebrew y uno del sitio de Python)? Supongo que Homebrew mantendrá python actualizado más fácilmente. Y se puede desinstalar fácilmente. No tengo ni idea de cómo hacer eso con el otro método de instalación. Me hace pensar en volver a la versión Homebrew ya que sé cómo manejarla.

0 votos

@greg homebrew es mucho más fácil de gestionar, por ejemplo, las desinstalaciones. También mantiene sus diversas interdependencias de paquetes interconectados bastante bien.

1 votos

@evenfire gracias por la buena explicación. brew info python es una forma práctica de encontrar rápidamente las rutas de acceso a las instalaciones existentes de brewed python

5voto

Bex Puntos 1

He seguido el enlace que viene con el instalador de QGIS para https://www.python.org/downloads/ e instalé python3 de esa manera. El instalador de QGIS fue entonces feliz.

Esto parece contradecirse con los comentarios de aquí:

"Debido a que QGIS enlaza la librería python, debe instalar el Python 3.6 de python.org. No puedes sustituirlo por otra instalación de python 3. Lo siento, es así".

Publicado en http://www.kyngchaos.com/blog/2018/20180315_qgis_3_must_use_python.org_python_3 . Si supiera cómo contactar con William Kyngesbury, lo haría. Sin embargo, está realizando un gran servicio.

4voto

Carlos Puntos 1716

Otra versión de pyenv y el enlace simbólico, utilizando brew sólo para las dependencias.

Ubicación recomendada para la instalación pyenv es ~/.pyenv ( $HOME/.pyenv ), pero podría ser cualquier lugar.

  1. clon pyenv repositorio (tal vez adaptar ~/.pyenv a /path/to/pyenv )

    git clone https://github.com/pyenv/pyenv.git ~/.pyenv
  2. configuración pyenv en ~/.bash_profile (tal vez adaptar $HOME/.pyenv a /path/to/pyenv , tenga en cuenta que la tercera línea debe seguir siendo la última de .bash_profile (incluso después de futuras actualizaciones)

    echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
    echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
    echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
  3. reiniciar el shell

    exec "$SHELL"
  4. instalar dependencias readline y xz de forma sencilla con brew

    brew install readline xz
  5. instalar Python 3.6.x que contiene Python.framework (quizás adaptar el número de versión)

    env PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install 3.6.8
  6. siempre se rehace después de añadir una nueva versión de Python a pyenv

    pyenv rehash
  7. enlace simbólico Python.framework

    sudo ln -s $(pyenv root)/versions/3.6.8/Python.framework /Library/Frameworks/Python.framework

Ahora el instalador de QGIS 3.6.0 de qgis.org debería funcionar bien y además macOS está bien preparado para múltiples versiones de Python, jugando bien con el Python del sistema.

3voto

Dan Pritts Puntos 556

Una versión que utiliza pyenv y brew :

brew install pyenv
env PYTHON_CONFIGURE_OPTS="--enable-framework CC=clang" pyenv install 3.6.5
sudo ln -s /Users/$USER/.pyenv/versions/3.6.5/Python.framework/Versions/3.6 /Library/Frameworks/Python.framework/Versions/3.6
sudo cp -R /Users/$USER/.pyenv/versions/3.6.5/Python.framework/Versions/3.6 /Library/Frameworks/Python.framework/Versions/3.6
sudo cp -r /Users/$USER/.pyenv/versions/3.6.5/lib/python3.6/lib-dynload/ /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload
sudo cp /Users/$USER/.pyenv/versions/3.6.5/lib/python3.6/lib-dynload/_struct.cpython-36m-darwin.so /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_struct.cpython-36m-darwin.so
#

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia 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