Instalar wxPython en osx 10.11

Cuando bash instalar wxPython, muestra un error:

> The Installer could not install the software because there was no > software found to install. 

¿Cómo puedo arreglarlo?

wxPython está utilizando una secuencia de comandos heredada , y de acuerdo con esta nota técnica, los instaladores del paquete quedaron en desuso y (a partir de la versión de El Capitán) no son compatibles:

Los paquetes de instaladores de estilo paquete son una ayuda de transición heredada que ya no se admite. PackageMaker tampoco es compatible. Ahora es necesario convertir a paquetes de instaladores de archivos sin formato utilizando herramientas como productbuild.

Eso te deja con dos opciones,

  1. Convertir el instalador en un paquete plano.
  2. Compile wxWidgets e instálelo localmente.

Para lograr lo primero, sigue estas instrucciones:

0 ) Supongamos que ya ha montado el dmg y que ha movido la carpeta pkg a un lugar de trabajo .

 cd ~/repack_wxpython cp -r /Volumes/wxPython/wxPython-ABC.pkg . 

1 ) Use la utilidad pax para extraer el archivo de carga útil ( pax.gz ) de Contents/Resources a una carpeta que se convertirá en la raíz de su nuevo paquete.

 mkdir pkg_root cd pkg_root pax -f ../wxPython-ABC.pkg/Contents/Resources/wxPython-ABC.pax.gz -z -r cd .. 

2 ) Cambie el nombre de los scripts preflight / postflight del paquete, para preinstall / postinstall scripts, como se requiere para paquetes planos, en una carpeta de scripts.

 mkdir scripts cp wxPython-ABC.pkg/Contents/Resources/preflight scripts/preinstall cp wxPython-ABC.pkg/Contents/Resources/postflight scripts/postinstall 

3 ) Crea el paquete plano usando la herramienta pkgbuild :

 pkgbuild --root ./pkg_root --scripts ./scripts --identifier com.wxwidgets.wxpython wxPython-ABC.pkg 

Esta es la documentación del comando pkbuild en caso de que quiera personalizar los parámetros pasados.

Advertencias: el paquete del paquete original contiene un License.rtf y un archivo Welcome.txt que no están incluidos en el paquete plano. Es necesario agregarlos definiendo un archivo XML personalizado y creando otro paquete con el comando productbuild .

Un instalador que funciona para wxpython para Mac parece estar disponible en la versión preliminar:

https://groups.google.com/forum/#!topic/wxpython-dev/TMnoeAgf2Wg

Esto pareció funcionar para mí. Trabajó para El Capitán.

Estos son los pasos que utilicé con éxito para instalar wxPython ‘Classic’ (no ‘Phoenix’).
OSX 10.11 o posterior no puede ejecutar el instalador que intentó, pero este método funcionará.

  1. Tire de estas dos fonts más recientes en dos directorios de hermanos:
    https://github.com/wxWidgets/wxPython.git
    https://github.com/wxWidgets/wxWidgets.git
    (las fonts anteriores al 12/16/2015 no funcionarán para este método)
  2. Cambie los directorios cd /pathToYourGitHubSources/wxPython y ejecute el siguiente comando:
    python build-wxpython.py --build_dir=../bld --osx_cocoa --install
  3. Construir e instalar toma un tiempo. Una vez completado, puede intentar importar wx, pero es posible que primero necesite los siguientes pasos.
  4. Mire en el archivo /lib/*.pyc recién creado para ver en qué directorios están los archivos wxPython* , así como la ubicación de los archivos /wx/*.py y /lib/*.pyc . Los tres directorios son probablemente como:
    /usr/lib/python2.7/site-packages
    /usr/lib/python2.7/site-packages/wx
    /usr/lib/python2.7/site-packages/wx/lib
  5. Desde la línea de comandos del terminal, establezca el entorno y pruebe wx:

     export PYTHONPATH='/usr/lib/python2.7/site-packages/wx' export DYLD_LIBRARY_PATH='/usr/lib/python2.7/site-packages/wx/lib' python import sys import wxversion try: wxversion.select(['3.0.3']) except wxversion.VersionError: print "wx version failed detection" sys.path.insert(0, '/usr/lib/python2.7/site-packages') import wx print wx.version() 

Si se imprime la versión wx, está funcionando.
Algunos sistemas tienen otras versiones de wxPython o vestigios de antiguos wxPythons instalados que me han llevado a la necesidad de configurar el entorno como se ve arriba hasta que las piezas antiguas se eliminen del sistema.

esto funcionó para mí (10.11.16):

  sudo pip install --upgrade --trusted-host wxpython.org --pre -f http://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix 

¿Cómo instalar correctamente wxPython?

Encontró una solución para este problema:

Error

mac01: herramientas ganeshr $ ride.py

Versión incorrecta de wxPython. Debe instalar wxPython 2.8.12.1 con soporte de Unicode para ejecutar RIDE. wxPython 2.8.12.1 se puede descargar

Solución: agregue support_versions.append (“3.0”) en robotide / __ init__.py

Compruebe que wxPython está instalado:

$ pip list

wxPython (3.0.2.0) wxPython-common (3.0.2.0)

$ sudo vim /Library/Python/2.7/site-packages/robotide/__init__.py

prueba: importar wxversion

desde wxversion importar VersionError

si sys.platform == ‘darwin’:

support_versions.append (“2.9”)

supported_versions.append (“3.0”) # Agregar esta línea, el RIDE admitirá wxPython (3.0.2.0)

wxversion.select (versiones_despuestas) import wx

Gracias.

Publiqué una respuesta sobre la comstackción desde la fuente y @memoselyk publiqué una respuesta útil sobre cómo convertir un paquete para instalarlo en un OSX más nuevo. Sin embargo, estoy encontrando que la solución fácil es usar el gestor de paquetes Brew .
A continuación se presentan los pasos que he utilizado.

  • Instalar Brew con este único comando:
    • ruby -e "$(curl -fsSL \ https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • Instalar wx; (También se instalarán dependencias)
    • brew install wxpython --framework

Prueba de error: python -c 'import wx'

Hecho, pero lo siguiente también puede ser relevante.

  • Ejecuté los siguientes comandos varias veces para limpiar instalaciones antiguas y asegurarme de poder importar el wx correcto:
    • sudo pip uninstall wxPython
    • sudo pip uninstall wxPython-Phoenix
  • Eliminé las variables de entorno del sistema agregadas para que funcionaran algunas instalaciones anteriores.
    • unset PYTHONPATH
    • unset DYLD_LIBRARY_PATH
    • unset DYLD_FRAMEWORK_PATH

Después de instalar wx, puede que tenga que ejecutar lo siguiente si se trata de una instalación sucia:
brew link --overwrite wxmacbrew link --overwrite wxmac
brew doctor wxPython (y siga las instrucciones muy útiles si se detecta algo)

Si desea acceder a otras comstackciones, este no es el método para usted, pero para la versión 3.0.2.0 ‘Classic’, creo que este es el camino a seguir.
brew upgrade wxPython subiría a una versión más reciente, si alguna vez hay una.

Para mí funcionó simplemente usando brew:

 brew install wxpython 

¡Me sorprende que nadie más haya publicado la misma respuesta!

PD: estoy en El Capitán, 10.11.3