Start supporting Qt6?

Any plans to support Qt6? For vcpkg I basically updated everything so that it can move other stuff like opencv to qt6. (see [vtk|opencv4|openimageio] Switch to Qt6 by Neumann-A · Pull Request #29078 · microsoft/vcpkg · GitHub)


It seems to work.

Hi @Neumann-A

So it works ?
Then it should be as trivial as addinc a CI to test it and updating docs.

Best,

You still need to update/patch the long deprecated stuff.
Which means

  • replace QRegExp with QRegularExpression
  • replace setMargin(x) with setContentsMargins(x,x,x,x)
  • replace some init(this) to initFrom(this)
  • replace QDesktopWidget/QApplication::desktop() with this->screen()
  • add a few missing includes
  • deactivate xmlpattern since the Qt module has been long deprecated.
  • link to Qt6::Core5Compat since I was lazy and didn’t replace all QRegExp.

But overall the changes are rather trivial and should work with Qt5.12.

3 Likes

FYI @ben.boeckel @Sankhesh_Jhaveri @Lucas_Givord

Compiling the client in WSL and starting it to display in VcXserv also worked. Only thing I see is

neumann@Iluinrandir:~/vcpkg/packages/paraview_x64-linux/tools/paraview$ ./paraview
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-neumann'
qt.core.qobject.connect: QObject::connect: No such slot QTableView::sortByColumn(int)

which seems to be a current bug in
https://gitlab.kitware.com/paraview/paraview/-/blob/master/Qt/Components/pqDataInformationWidget.cxx#L135
not defining the sort order

1 Like

Hi Alexander,
We’ve had several inquiries about getting ParaView to compile and work in WSL - do you think you could post a recipe for how you did it? Are you able to use accelerated graphics, i.e. the native graphics card, when running ParaView?

My recipe is just vcpkg install paraview[tools] everywhere (with said PR). Of course the required x deps for Qt need to be installed in WSL. I don’t think this is native OpenGL with VcXserv:
image
but i also don’t have vGPU drivers for that graphics card. If I set LIBGL_ALWAYS_INDIRECT=1 I’ll get the following error:

(   0.467s) [paraview        ]vtkOpenGLRenderWindow.c:481    ERR| vtkXOpenGLRenderWindow (0x561f2af318e0): Unable to find a valid OpenGL 3.2 or later implementation. Please update your video card driver to the latest version. If you are using Mesa please make sure you have version 11.2 or later and make sure your driver in Mesa supports OpenGL 3.2 such as llvmpipe or openswr. If you are on windows and using Microsoft remote desktop note that it only supports OpenGL 3.2 with nvidia quadro cards. You can use other remoting software such as nomachine to avoid this issue.
(   1.041s) [paraview        ]vtkOpenGLRenderWindow.c:481    ERR| vtkXOpenGLRenderWindow (0x561f29ad6720): Unable to find a valid OpenGL 3.2 or later implementation. Please update your video card driver to the latest version. If you are using Mesa please make sure you have version 11.2 or later and make sure your driver in Mesa supports OpenGL 3.2 such as llvmpipe or openswr. If you are on windows and using Microsoft remote desktop note that it only supports OpenGL 3.2 with nvidia quadro cards. You can use other remoting software such as nomachine to avoid this issue.

Loguru caught a signal: SIGSEGV
(   1.059s) [paraview        ]                       :0     FATL| Signal: SIGSEGV

@Neumann-A great work.

Could you open to separate merge request on gitlab to fix Qt6 and WSL for ParaView ?

Best,

Done. https://gitlab.kitware.com/paraview/paraview/-/merge_requests/6134

Qt6 experimental support has been merged, thanks @Neumann-A !