En Sierra: ¿Cómo hacer que Qt 5.8.0 / PyQt 5.7.1 / sip 4.19 / Python3.5 se instale y funcione correctamente?

3

Estoy experimentando problemas al intentar obtener la combinación de Qt 5.8.0 / PyQt 5.7.1 / sip 4.19 / Python3.5 para instalar & funciona correctamente en mi macOS 10.12.2 (Sierra).

Pasos para reproducir el problema :

( Estoy siendo muy específico porque, si alguien más se aventurara aquí tratando de lograr lo mismo )

  1. Instale Python3.5 a través de homebrew (brew install python3.5).
  2. Sin embargo, la instalación de PyQt5 a través de homebrew no funcionó porque mi código de Python se quejó de que no podía encontrar el módulo pyqt. Lo arreglé aplicando algunos enlaces simbólicos. Sin embargo, faltaba el código al lanzar errores como QtGui.QApplication faltaba, etc. También encontré varias quejas de usuarios de macOS que se habían encontrado con problemas similares pero no pude encontrar ninguna solución real. Por lo tanto, eliminé todos mis enlaces simbólicos y corrí brew uninstall pyqt5 .
  3. Luego encontré este gist en GitHub, y empecé a seguirlo así que I:
  4. Qt-opensource-mac-x64-clang-5.8.0.dmg descargado de qt-project.org
  5. Se descargaron las fuentes SIP y PyQt5-gpl como se menciona en la esencia.
  6. Luego desempaqué el SIP & Archivos tar de PyQt5. Luego ejecuté el comando:

    python3.5 ~/Downloads/sip-4.19/configure.py -d /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages --arch x86_64
    
  7. Hasta ahora, todo bien. También make , sudo make install & sudo make clean , como se menciona en la esencia, ejecutado sin problemas.

  8. Ahora, llegué al paso n. 13 de la esencia, que me dijo que hiciera un pequeño cambio en el comando !host_build listado en el archivo ~/Qt5.8.0/5.8/clang_64/mkspecs/qdevice.pri . Sin embargo, el archivo no mencionó ningún comentario !host_build , así que lo agregué yo mismo.
  9. Luego, en el paso 15 de la esencia que ejecuté:

    python3.5 configure.py --destdir /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages --qmake ~/Qt5.8.0/5.8/clang_64/bin/qmake
    
  10. Esto generó un error en la ruta del SDK, que solucioné ejecutando sudo xcode-select -s /Applications/Xcode.app/Contents/Developer según las instrucciones en esta publicación en la pila de personas que se encontraron con un problema similar.

  11. Ahora, el código mencionado anteriormente en el paso 10 se ejecutó, pero arrojó un error:

      

    Error: esta versión de PyQt5 y la versión comercial de Qt tienen licencias incompatibles

  12. Por lo tanto, busqué y llegué a una publicación en el foro QT. Me ayudó a resolver el error haciendo pequeños ajustes en el archivo configure.py de PyQt5 (comentando la verificación de la licencia).

  13. Luego, finalmente pude ejecutar con éxito el comando que mencioné en el paso 10 (paso 15 desde la esencia).
  14. Sin embargo, cuando intenté ejecutar make otra vez, todo parece ir perfecto hasta que ahora arroja este error que, hasta ahora, no he podido corregir:

    ~/Downloads/PyQt5_gpl-5.7.1/QtCore/sipQtCoreQt.cpp:1093:62: error: no member named 'WindowCancelButtonHint' in namespace 'Qt'; did you mean
          'WindowCloseButtonHint'?
        {sipName_WindowCancelButtonHint, static_cast<int>( ::Qt::WindowCancelButtonHint), 419},
                                                           ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
    
    
        WindowCloseButtonHint
    ../../../Qt5.8.0/5.8/clang_64/lib/QtCore.framework/Headers/qnamespace.h:300:9: note: 'WindowCloseButtonHint' declared here
            WindowCloseButtonHint = 0x08000000,
            ^
    ~/Downloads/PyQt5_gpl-5.7.1/QtCore/sipQtCoreQt.cpp:1106:58: error: no member named 'WindowOkButtonHint' in namespace 'Qt'
        {sipName_WindowOkButtonHint, static_cast<int>( ::Qt::WindowOkButtonHint), 419},
                                                       ~~~~~~^
    2 errors generated.
    make[1]: *** [sipQtCoreQt.o] Error 1
    make: *** [sub-QtCore-make_first-ordered] Error 2
    

¿Hay alguien que pueda ayudarme?

    
pregunta Montmons 25.01.2017 - 14:22

1 respuesta

4

Soy el que hizo la actualización Qt5 5.8.0 para Homebrew. Este es un problema conocido que persistirá hasta que Riverbank actualice su software. Le sugiero que los contacte en su lista de correo.

ACTUALIZACIÓN: Como solución temporal temporal, agregué una fórmula [email protected] y actualicé la fórmula PyQt5 para que dependiera de ella. Vea las siguientes solicitudes de extracción, que he fusionado:

enlace

enlace

    
respondido por el ilovezfs 26.01.2017 - 07:01

Lea otras preguntas en las etiquetas