LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   FreeCAD headaches- Broken PySide2 and Qt needs to be upgraded to Qt6. (https://www.linuxquestions.org/questions/slackware-14/freecad-headaches-broken-pyside2-and-qt-needs-to-be-upgraded-to-qt6-4175727965/)

arfon 08-11-2023 04:16 PM

FreeCAD headaches- Broken PySide2 and Qt needs to be upgraded to Qt6.
 
FreeCAD (Slackbuild) will not compile because PySide2 is missing...

PySide2 won't build because the 5.x (Slackbuild) version doesn't support 'DragMove'...

PySide 6.x won't build because it requires Qt6...

I'm building a Qt6 package right now from the Slackbuild...

Question 1: To install Qt6 do I need to remove Qt5 or will they play nicely together?

Question 2: Does anyone have a Slackbuild for PySide 6.X?

chris.willing 08-11-2023 08:03 PM

Quote:

Originally Posted by arfon (Post 6447665)
FreeCAD (Slackbuild) will not compile because PySide2 is missing...

PySide2 won't build because the 5.x (Slackbuild) version doesn't support 'DragMove'...

Can you be more verbose about your problem with pyside2? It builds fine here, as does shiboken2 on which it depends.

chris

arfon 08-11-2023 08:33 PM

On a brand new, (installed 6 hours ago) Slackware64-current box...

Compilation fails with four errors-

Code:

In file included from /tmp/SBo/pyside-setup-opensource-src-5.15.2/sources/pyside2/build/PySide2/QtGui/PySide2/QtGui/qdragmoveevent_wrapper.cpp:65:
/tmp/SBo/pyside-setup-opensource-src-5.15.2/sources/pyside2/build/PySide2/QtGui/PySide2/QtGui/qdragmoveevent_wrapper.h:55:220: error: no member named 'DragMove' in 'QOpenGLShader'; did you mean simply 'DragMove'?
    QDragMoveEventWrapper(const QPoint & pos, QFlags<Qt::DropAction> actions, const QMimeData * data, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, QFlags<QOpenGLShader::ShaderTypeBit> type = QOpenGLShader::DragMove);


In file included from /tmp/SBo/pyside-setup-opensource-src-5.15.2/sources/pyside2/build/PySide2/QtGui/PySide2/QtGui/qdragmoveevent_wrapper.cpp:65:
/tmp/SBo/pyside-setup-opensource-src-5.15.2/sources/pyside2/build/PySide2/QtGui/PySide2/QtGui/qdragmoveevent_wrapper.h:55:213: error: no viable conversion from 'QEvent::Type' to 'QFlags<QOpenGLShader::ShaderTypeBit>'
    QDragMoveEventWrapper(const QPoint & pos, QFlags<Qt::DropAction> actions, const QMimeData * data, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, QFlags<QOpenGLShader::ShaderTypeBit> type = QOpenGLShader::DragMove);


/tmp/SBo/pyside-setup-opensource-src-5.15.2/sources/pyside2/build/PySide2/QtGui/PySide2/QtGui/qdragmoveevent_wrapper.cpp:105:240: error: no matching constructor for initialization of 'QDragMoveEvent'
QDragMoveEventWrapper::QDragMoveEventWrapper(const QPoint & pos, QFlags<Qt::DropAction> actions, const QMimeData * data, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, QFlags<QOpenGLShader::ShaderTypeBit> type) : QDragMoveEvent(pos, actions, data, buttons, modifiers, type)



/tmp/SBo/pyside-setup-opensource-src-5.15.2/sources/pyside2/build/PySide2/QtGui/PySide2/QtGui/qdragmoveevent_wrapper.cpp:205:73: error: no member named 'DragMove' in 'QOpenGLShader'
        ::QFlags<QOpenGLShader::ShaderTypeBit> cppArg5 = QOpenGLShader::DragMove;


A post in the QT forums (https://forum.qt.io/topic/144731/pys...-qopenglshader) said:
Quote:

PLease use the current version 6.5; PySide2 does not support this.

chris.willing 08-11-2023 09:06 PM

Quote:

Originally Posted by arfon (Post 6447703)
On a brand new, (installed 6 hours ago) Slackware64-current box...

SlackBuilds from SBo are for Slackware(64)-15.0, not -current

arfon 08-11-2023 09:45 PM

If you use PinkMist's SBOtools and Ponce's repo, they build for current.

Not without problems sometimes.

If current is the basis future Slackware stable, it looks like qt needs to be bumped up to 6

willysr 08-11-2023 09:49 PM

we have qt6 in SBo and they can co-exist with qt5 in -current
don't expect qt6 in -current as we don't have packages in -current that depends on it for now

arfon 08-12-2023 12:13 AM

Quote:

Slackware package /tmp/qt6-6.5.0-x86_64-1_SBo.tgz created.
I built qt6... I just need to know if I should remove qt5 before installing.

Quote:

Originally Posted by willysr (Post 6447727)
and they can co-exist with qt5

THAT'S what I needed. THANKS!

arfon 08-12-2023 12:52 AM

Bah..... Even after installing Qt6, PySide2 still uses Qt5.

Looks like I'm going to have to build Shiboken6 & PySide6

laprjns 08-12-2023 05:28 AM

Maybe give the flatpak package a try, https://flathub.org/apps/org.freecadweb.FreeCAD

mickski56 08-12-2023 05:38 AM

There is a patch for qt5 here https://raw.githubusercontent.com/Op...okenness.patch it applies to qt5-5.15.10_20230614_d2861d63 and allows to build pyside2 5.15.2

hth

arfon 08-12-2023 06:20 AM

Quote:

Originally Posted by laprjns (Post 6447766)
Maybe give the flatpac package a try

I'm running the AppImage... I was feeling cocky about figuring out why the slackbuild was failing. But alas, dependency hell got me again.

I <3 AppImages!

nobodino 08-12-2023 11:57 AM

2 possibilities for Appimage:
- https://github.com/FreeCAD/FreeCAD-B.../weekly-builds
- https://github.com/realthunder/FreeCAD/releases


All times are GMT -5. The time now is 12:14 PM.