visit
visit copied to clipboard
develop branch build issues with VTK-8.1.0 and QT-5.14.2 on Ubuntu22
Describe the bug
VTK and QT on the develop branch do not build on a fresh Ubuntu 22 system with gcc 11.4.0
To Reproduce
Try to build visit with the build_visit script on a fresh Ubuntu 22.04 system
./build_visit --parallel --makeflags -j14 --system-python --conduit --vtk --qt --qwt --adios --advio --boost --conduit --gdal --glu --h5part --hdf5 --icet --llvm --netcdf --mfem --mesagl --szip --silo --zlib --mpich --vtkm --boxlib --pyside --build-mode release --mpich --prefix /home/kressjm/packages/visit-install
Additionally, I tried having visit build its own python, but this was causing lots of headaches too. Hence system python here.
Desktop
- OS and version: Ubuntu 22.04
- VisIt Version: develop branch
Additional context
I saw some commits for QT6, so I don't know what the plan is for supporting QT5 going forward. But a few additional patches in the build system will fix QT. Below are the problem files and the fixes.
static const unsigned kSigStackSize = std::max(16384L, SIGSTKSZ);
../qt-everywhere-src-5.14.2/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
#include <cstdint>
../qt-everywhere-src-5.14.2/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/base/task_runner.h
../qt-everywhere-src-5.14.2/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtx_receive_stream.h
../qt-everywhere-src-5.14.2/qtwebengine/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/decoding_state.h
#include <stddef.h>
../qt-everywhere-src-5.14.2/qtwebengine/src/3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
../qt-everywhere-src-5.14.2/qtwebengine/src/3rdparty/chromium/media/cdm/supported_cdm_versions.h
In file included from gen/third_party/blink/renderer/core/core_generated_jumbo_11.cc:7:
/home/kressjm/packages/visit-src/qt-everywhere-src-5.14.2-build/qtwebengine/src/core/debug/gen/third_party/blink/renderer/core/xpath_grammar.cc:124:10: fatal error: xpath_grammar.hh: No such file or directory
124 | #include "xpath_grammar.hh"
remove line: os.unlink(outputHTmp)
./qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/build/scripts/rule_bison.py
For VTK the issue is mainly around and solvable via this issue: https://gitlab.kitware.com/vtk/vtk/-/issues/17670
I wonder if this is related? #18747
Maybe this will fix: #18642
I wonder if this is related? #18747
Maybe this will fix: #18642
Potentially related to the first issue. It does not look like the fixes for MacOS will resolve these issues here. But I could be wrong.
I finished the build by doing the changes listed above, moving down go gcc 9.5, and with this I was able to let visit build python as well.
./build_visit --parallel --makeflags -j14 --python --conduit --vtk --qt --qwt --adios --advio --boost --conduit --gdal --glu --h5part --hdf5 --icet --llvm --netcdf --mfem --mesagl --szip --silo --zlib --mpich --vtkm --boxlib --pyside --build-mode release --mpich --prefix /home/kressjm/packages/visit-install
Fixing the VTK issue can be accomplished with a couple different greps
grep -rl " nullptr, // tp_print" ./ | xargs sed -i 's| nullptr, // tp_print| 0, // tp_print|g'
grep -rl " nullptr, // tp_print" ./ | xargs sed -i 's| nullptr, // tp_print| 0, // tp_print|g'
I still think a few of these will be issues moving forward.
After installed visit 3.3 on my ubuntu22.04, it fail to launch the interface. How can I fix that?
Can you run visit with debugging enabled and send us the logs? You can try visit -debug 5
, which should produce a number of files ending in .vlog
. If you could send us the .5.vlog
files we could have a look and help diagnose your issue.
closing, b/c releases will now focus on VTK 9 + Qt6