Closed cdkharris closed 2 months ago
As ccspap2
, after loading the micress module,
$ ldd /shared/ucl/apps/micress/7.201/Bin/MICpad.exe
linux-vdso.so.1 => (0x00007ffe0bf54000)
libqwt.so.6.2 => not found
libQt5Widgets.so.5 => not found
libQt5Gui.so.5 => not found
libQt5Xml.so.5 => not found
libQt5Core.so.5 => not found
libGL.so.1 => /lib64/libGL.so.1 (0x00007f1350b8d000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f1350971000)
libm.so.6 => /lib64/libm.so.6 (0x00007f135066f000)
libc.so.6 => /lib64/libc.so.6 (0x00007f13502a1000)
/lib64/ld-linux-x86-64.so.2 (0x00007f1350e19000)
libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f135006f000)
libX11.so.6 => /lib64/libX11.so.6 (0x00007f134fd31000)
libXext.so.6 => /lib64/libXext.so.6 (0x00007f134fb1f000)
libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f134f869000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f134f665000)
libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f134f43d000)
libXau.so.6 => /lib64/libXau.so.6 (0x00007f134f239000)
This indicates that xcb, QT5, and qwt are required. There are two possible issues.
gcc-libs/4.9.2
, but MICRESS was compiled with gcc-libs/10.2.0
to address some errors during installation.qwt/6.1.4/gnu-4.9.2
, but it has the same issue with gcc-libs and, more importantly, MICpad requires version 6.2.0I'm back-tracking a little to find the minimal/most compatible compiler configuration for installing MICRESS. gnu-4.9.2: Modules sequence:
module purge
module load default-modules
module unload -f compilers mpi
module load compilers/gnu/4.9.2
module load numactl/2.0.12
module load binutils/2.29.1/gnu-4.9.2
module load ucx/1.8.0/gnu-4.9.2
module load mpi/openmpi/4.0.3/gnu-4.9.2
Errors reported by build tools:
/shared/ucl/apps/micress-testing/7.201/Bin/libopenmpt.so.0: /shared/ucl/apps/gcc/4.9.2/lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/libopenmpt.so.0)
/shared/ucl/apps/micress-testing/7.201/Bin/libopenmpt.so.0: /shared/ucl/apps/gcc/4.9.2/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/libopenmpt.so.0)
/shared/ucl/apps/micress-testing/7.201/Bin/libopencv_videoio.so.405: /shared/ucl/apps/gcc/4.9.2/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/libopencv_videoio.so.405)
/shared/ucl/apps/micress-testing/7.201/Bin/libssh.so.4: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/libssh.so.4)
/shared/ucl/apps/micress-testing/7.201/Bin/libopencv_core.so.405: /shared/ucl/apps/gcc/4.9.2/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/libopencv_core.so.405)
/shared/ucl/apps/micress-testing/7.201/Bin/libopencv_imgproc.so.405: /shared/ucl/apps/gcc/4.9.2/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/libopencv_imgproc.so.405)
/shared/ucl/apps/micress-testing/7.201/Bin/DP_MICRESS.exe: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/DP_MICRESS.exe)
/shared/ucl/apps/micress-testing/7.201/Bin/libopencv_imgcodecs.so.405: /shared/ucl/apps/gcc/4.9.2/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/libopencv_imgcodecs.so.405)
/shared/ucl/apps/micress-testing/7.201/Bin/libopencv_imgcodecs.so.405: /shared/ucl/apps/gcc/4.9.2/lib64/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/libopencv_imgcodecs.so.405)
However the MICRESS application seems functional; I was able to run both tests on the login node.
When I then try to run the MICpad GUI I get the following error (I have ssh'd with X-forwarding enabled)
$ module load xcb-util
$ module unload compilers
$ module load qwt # this also loads Qt5
$ /shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe
/shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe: error while loading shared libraries: libqwt.so.6.2: cannot open shared object file: No such file or directory
So, at least a newer version of qwt is needed.
I have built qwt-6.2.0. After following the above, ldd reveals:
$ ldd /shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe
/shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe: /shared/ucl/apps/qt/5.12.1/gnu-4.9.2/lib/libQt5Core.so.5: version `Qt_5.15' not found (required by /shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe)
So I'll see if it's possible to install a newer version of Qt (5.15).
I have built qt-5.15.2, though I'm not convinced that the compiler I used or the requirements in the module file are appropriate. The following procedure reveals: (logged in with X forwarding as ccspap2)
$ module purge
$ module load default-modules
$ module load xcb-util
$ module unload compilers
$ module load qwt/6.2.0
$ module load -f qt/5.15.2
$ module load -f compilers/gnu/7.3.0
$ ldd /shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe
linux-vdso.so.1 => (0x00007ffd86bf9000)
libqwt.so.6.2 => /shared/ucl/apps/qwt/6.2.0/gnu-4.9.2/qwt-6.2.0/lib/libqwt.so.6.2 (0x00007fd903790000)
libQt5Widgets.so.5 => /shared/ucl/apps/qt/5.15.2/gnu-7.3.0/lib/libQt5Widgets.so.5 (0x00007fd902f39000)
libQt5Gui.so.5 => /shared/ucl/apps/qt/5.15.2/gnu-7.3.0/lib/libQt5Gui.so.5 (0x00007fd9026d9000)
libQt5Xml.so.5 => /shared/ucl/apps/qt/5.15.2/gnu-7.3.0/lib/libQt5Xml.so.5 (0x00007fd902499000)
libQt5Core.so.5 => /shared/ucl/apps/qt/5.15.2/gnu-7.3.0/lib/libQt5Core.so.5 (0x00007fd901c8e000)
libGL.so.1 => /lib64/libGL.so.1 (0x00007fd901a02000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fd9017e6000)
libm.so.6 => /lib64/libm.so.6 (0x00007fd9014e4000)
libc.so.6 => /lib64/libc.so.6 (0x00007fd901116000)
/lib64/ld-linux-x86-64.so.2 (0x00007fd903b39000)
libQt5PrintSupport.so.5 => /shared/ucl/apps/qt/5.12.1/gnu-4.9.2/lib/libQt5PrintSupport.so.5 (0x00007fd903cd8000)
libQt5Svg.so.5 => /shared/ucl/apps/qt/5.12.1/gnu-4.9.2/lib/libQt5Svg.so.5 (0x00007fd903c7d000)
libQt5OpenGL.so.5 => /shared/ucl/apps/qt/5.12.1/gnu-4.9.2/lib/libQt5OpenGL.so.5 (0x00007fd903c21000)
libQt5Concurrent.so.5 => /shared/ucl/apps/qt/5.12.1/gnu-4.9.2/lib/libQt5Concurrent.so.5 (0x00007fd903c19000)
libstdc++.so.6 => /shared/ucl/apps/gcc/7.3.0/lib64/libstdc++.so.6 (0x00007fd900d94000)
libgcc_s.so.1 => /shared/ucl/apps/gcc/7.3.0/lib64/libgcc_s.so.1 (0x00007fd900b7d000)
libpng15.so.15 => /lib64/libpng15.so.15 (0x00007fd900952000)
libz.so.1 => /lib64/libz.so.1 (0x00007fd90073c000)
libharfbuzz.so.0 => /lib64/libharfbuzz.so.0 (0x00007fd90049f000)
libicui18n.so.50 => /lib64/libicui18n.so.50 (0x00007fd9000a0000)
libicuuc.so.50 => /lib64/libicuuc.so.50 (0x00007fd8ffd27000)
libicudata.so.50 => /lib64/libicudata.so.50 (0x00007fd8fe754000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fd8fe550000)
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007fd8fe34e000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007fd8fe038000)
libGLX.so.0 => /lib64/libGLX.so.0 (0x00007fd8fde06000)
libX11.so.6 => /lib64/libX11.so.6 (0x00007fd8fdac8000)
libXext.so.6 => /lib64/libXext.so.6 (0x00007fd8fd8b6000)
libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007fd8fd600000)
libfreetype.so.6 => /shared/ucl/apps/qt/5.12.1/gnu-4.9.2/support/lib/libfreetype.so.6 (0x00007fd8fd358000)
libgraphite2.so.3 => /lib64/libgraphite2.so.3 (0x00007fd8fd12a000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fd8fcec8000)
libxcb.so.1 => /shared/ucl/apps/qt/5.12.1/gnu-4.9.2/support/lib/libxcb.so.1 (0x00007fd8fcca3000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00007fd8fca93000)
libXau.so.6 => /shared/ucl/apps/qt/5.12.1/gnu-4.9.2/support/lib/libXau.so.6 (0x00007fd8fc88f000)
$ /shared/ucl/apps/micress-testing/7.201/Bin/MICpad.sh
/shared/ucl/apps/micress-testing/7.201/Bin/MICpad.sh: line 7: 7039 Aborted $MICRESS_Bin/MICpad.exe $@ &>/dev/null
$ /shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe
/shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe: relocation error: /shared/ucl/apps/micress-testing/7.201/Bin/MICpad.exe: symbol _ZNSt20bad_array_new_lengthD1Ev, version Qt_5 not defined in file libQt5Gui.so.5 with link time reference
I think I have encountered a similar error before and it was due to conflicts in Qt minor versions (linked to a library with a later minor version than the application). If that is the problem here then I'm not surprised because I am not sure which minor version of qt-5.15.* was used for MICRESS (and because I built qwt/6.2.0 with qt-5.12.1, but this may be irrelevant). ldd indicates that libQt5Gui.so.5 is coming from qt-5.15.2, so I can try building qt-5.15.0 and this may satisfy Qt's conditions on the minor version.
When I use the script that MICRESS provides to set up the environment for MICpad, all but one library is missing. The missing library is libxkbcommon-x11, which we have a module for. After loading that module, there are no more missing libraries. However there are still problems with connecting to the display via X forwarding.
MICRESS comes packaged with these libraries and a script which equips the environment for MICpad. It ought to work as follows, but there are problems:
$ /shared/ucl/apps/micress/7.201/Bin/MICpad.sh
/shared/ucl/apps/micress/7.201/Bin/MICpad.sh: line 7: 178464 Aborted $MICRESS_Bin/MICpad.exe $@ &>/dev/null
I dug in a little further by setting up the environment manually (by setting the environment variables described in MICpad.sh
), then running the executable:
$ $MICRESS_Bin/MICpad.exe
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: xcb.
Aborted
And with the environment set up, I ran ldd:
$ ldd $MICRESS_Bin/MICpad.exe
linux-vdso.so.1 => (0x00007fff6d3fe000)
libqwt.so.6.2 => /shared/ucl/apps/micress/7.201/Bin/libqwt.so.6.2 (0x00007f8b7e53b000)
libQt5Widgets.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5Widgets.so.5 (0x00007f8b7dcd7000)
libQt5Gui.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5Gui.so.5 (0x00007f8b7d3a2000)
libQt5Xml.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5Xml.so.5 (0x00007f8b7d164000)
libQt5Core.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5Core.so.5 (0x00007f8b7c969000)
libGL.so.1 => /lib64/libGL.so.1 (0x00007f8b7c6dd000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f8b7c4c1000)
libm.so.6 => /lib64/libm.so.6 (0x00007f8b7c1bf000)
libc.so.6 => /lib64/libc.so.6 (0x00007f8b7bdf1000)
/lib64/ld-linux-x86-64.so.2 (0x00007f8b7e8ee000)
libQt5PrintSupport.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5PrintSupport.so.5 (0x00007f8b7bb7f000)
libQt5Svg.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5Svg.so.5 (0x00007f8b7b928000)
libQt5OpenGL.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5OpenGL.so.5 (0x00007f8b7b6d1000)
libQt5Concurrent.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5Concurrent.so.5 (0x00007f8b7b4ca000)
libstdc++.so.6 => /shared/ucl/apps/gcc/10.2.0-p95889/lib64/libstdc++.so.6 (0x00007f8b7b0fd000)
libgcc_s.so.1 => /shared/ucl/apps/gcc/10.2.0-p95889/lib64/libgcc_s.so.1 (0x00007f8b7aee5000)
libz.so.1 => /shared/ucl/apps/micress/7.201/Bin/libz.so.1 (0x00007f8b7acca000)
libicui18n.so.56 => /shared/ucl/apps/micress/7.201/Bin/libicui18n.so.56 (0x00007f8b7a831000)
libicuuc.so.56 => /shared/ucl/apps/micress/7.201/Bin/libicuuc.so.56 (0x00007f8b7a479000)
libicudata.so.56 => /shared/ucl/apps/micress/7.201/Bin/libicudata.so.56 (0x00007f8b78a96000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f8b78892000)
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007f8b78690000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f8b7837a000)
libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f8b78148000)
libX11.so.6 => /lib64/libX11.so.6 (0x00007f8b77e0a000)
libXext.so.6 => /lib64/libXext.so.6 (0x00007f8b77bf8000)
libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f8b77942000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f8b776e0000)
libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f8b774b8000)
libXau.so.6 => /lib64/libXau.so.6 (0x00007f8b772b4000)
With QT debugging:
$ export QT_DEBUG_PLUGINS=1
$ $MICRESS_Bin/MICpad.exe
QFactoryLoader::QFactoryLoader() checking directory path "/lustre/shared/ucl/apps/micress/7.201/Bin/platforms" ...
QFactoryLoader::QFactoryLoader() looking at "/lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so"
Found metadata in lib /lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
"MetaData": {
"Keys": [
"xcb"
]
},
"archreq": 0,
"className": "QXcbIntegrationPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("xcb")
Cannot load library /lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so: (libxkbcommon-x11.so.0: cannot open shared object file: No such file or directory)
QLibraryPrivate::loadPlugin failed on "/lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so" : "Cannot load library /lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so: (libxkbcommon-x11.so.0: cannot open shared object file: No such file or directory)"
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: xcb.
Aborted
Indeed, running ldd on libqxcb reveals the following:
$ ldd /lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so
ldd: warning: you do not have execution permission for `/lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so'
linux-vdso.so.1 => (0x00007ffe7fdd1000)
libQt5XcbQpa.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5XcbQpa.so.5 (0x00007fdf994d0000)
libfontconfig.so.1 => /lib64/libfontconfig.so.1 (0x00007fdf9928e000)
libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007fdf98fcf000)
libz.so.1 => /shared/ucl/apps/micress/7.201/Bin/libz.so.1 (0x00007fdf98db4000)
libQt5Gui.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5Gui.so.5 (0x00007fdf9847f000)
libQt5DBus.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5DBus.so.5 (0x00007fdf981f3000)
libQt5Core.so.5 => /shared/ucl/apps/micress/7.201/Bin/libQt5Core.so.5 (0x00007fdf979f8000)
libGL.so.1 => /lib64/libGL.so.1 (0x00007fdf9776c000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fdf97550000)
libX11-xcb.so.1 => /lib64/libX11-xcb.so.1 (0x00007fdf9734e000)
libxcb-icccm.so.4 => /shared/ucl/apps/xcb-util/0.4.0/lib/libxcb-icccm.so.4 (0x00007fdf97149000)
libxcb-image.so.0 => /shared/ucl/apps/xcb-util/0.4.0/lib/libxcb-image.so.0 (0x00007fdf96f44000)
libxcb-shm.so.0 => /lib64/libxcb-shm.so.0 (0x00007fdf96d40000)
libxcb-keysyms.so.1 => /shared/ucl/apps/xcb-util/0.4.0/lib/libxcb-keysyms.so.1 (0x00007fdf96b3d000)
libxcb-randr.so.0 => /lib64/libxcb-randr.so.0 (0x00007fdf9692d000)
libxcb-render-util.so.0 => /shared/ucl/apps/xcb-util/0.4.0/lib/libxcb-render-util.so.0 (0x00007fdf96729000)
libxcb-render.so.0 => /lib64/libxcb-render.so.0 (0x00007fdf9651b000)
libxcb-shape.so.0 => /lib64/libxcb-shape.so.0 (0x00007fdf96317000)
libxcb-sync.so.1 => /lib64/libxcb-sync.so.1 (0x00007fdf96110000)
libxcb-xfixes.so.0 => /lib64/libxcb-xfixes.so.0 (0x00007fdf95f08000)
libxcb-xinerama.so.0 => /lib64/libxcb-xinerama.so.0 (0x00007fdf95d05000)
libxcb-xkb.so.1 => /lib64/libxcb-xkb.so.1 (0x00007fdf95ae9000)
libxcb.so.1 => /lib64/libxcb.so.1 (0x00007fdf958c1000)
libXext.so.6 => /lib64/libXext.so.6 (0x00007fdf956af000)
libX11.so.6 => /lib64/libX11.so.6 (0x00007fdf95371000)
libxkbcommon-x11.so.0 => not found
libxkbcommon.so.0 => /lib64/libxkbcommon.so.0 (0x00007fdf95131000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fdf94f2d000)
libstdc++.so.6 => /shared/ucl/apps/gcc/10.2.0-p95889/lib64/libstdc++.so.6 (0x00007fdf94b60000)
libm.so.6 => /lib64/libm.so.6 (0x00007fdf9485e000)
libgcc_s.so.1 => /shared/ucl/apps/gcc/10.2.0-p95889/lib64/libgcc_s.so.1 (0x00007fdf94646000)
libc.so.6 => /lib64/libc.so.6 (0x00007fdf94278000)
libxkbcommon-x11.so.0 => not found
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007fdf94076000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007fdf93d60000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007fdf93b36000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fdf93931000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00007fdf93721000)
libpng15.so.15 => /lib64/libpng15.so.15 (0x00007fdf934f6000)
libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x00007fdf932a6000)
libicui18n.so.56 => /shared/ucl/apps/micress/7.201/Bin/libicui18n.so.56 (0x00007fdf92e0d000)
libicuuc.so.56 => /shared/ucl/apps/micress/7.201/Bin/libicuuc.so.56 (0x00007fdf92a55000)
libicudata.so.56 => /shared/ucl/apps/micress/7.201/Bin/libicudata.so.56 (0x00007fdf91072000)
/lib64/ld-linux-x86-64.so.2 (0x00007fdf99a2d000)
libGLX.so.0 => /lib64/libGLX.so.0 (0x00007fdf90e40000)
libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007fdf90b8a000)
libxcb-util.so.1 => /shared/ucl/apps/xcb-util/0.4.0/lib/libxcb-util.so.1 (0x00007fdf90984000)
libXau.so.6 => /lib64/libXau.so.6 (0x00007fdf90780000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fdf9051e000)
libsystemd.so.0 => /lib64/libsystemd.so.0 (0x00007fdf902ed000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007fdf900e8000)
librt.so.1 => /lib64/librt.so.1 (0x00007fdf8fee0000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fdf8fcb9000)
liblzma.so.5 => /lib64/liblzma.so.5 (0x00007fdf8fa93000)
liblz4.so.1 => /lib64/liblz4.so.1 (0x00007fdf8f87e000)
libgcrypt.so.11 => /lib64/libgcrypt.so.11 (0x00007fdf8f5fd000)
libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007fdf8f3f8000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fdf8f1de000)
libdw.so.1 => /lib64/libdw.so.1 (0x00007fdf8ef8d000)
libattr.so.1 => /lib64/libattr.so.1 (0x00007fdf8ed88000)
libelf.so.1 => /lib64/libelf.so.1 (0x00007fdf8eb70000)
The important part is libxkbcommon-x11.so.0 => not found
.
We do have a module for libxkbcommon
, so I loaded that. At this point ldd checks out (no missing libraries) but Qt still has some problems with the display over X forwarding:
$ $MICRESS_Bin/MICpad.exe
QFactoryLoader::QFactoryLoader() checking directory path "/lustre/shared/ucl/apps/micress/7.201/Bin/platforms" ...
QFactoryLoader::QFactoryLoader() looking at "/lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so"
Found metadata in lib /lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
"MetaData": {
"Keys": [
"xcb"
]
},
"archreq": 0,
"className": "QXcbIntegrationPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("xcb")
loaded library "/lustre/shared/ucl/apps/micress/7.201/Bin/platforms/libqxcb.so"
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: xcb.
Aborted
I think there is a problem with X forwarding and setting up the display. There are many variables here outside the MICRESS installation, so I will try some different options for forwarding the display.
I was able to start MICpad and run a benchmark with the following steps: (as ccspap2 with X forwarding)
module unload gcc-libs
module load micress
module load libxkbcommon xcb-util
MICpad.sh
Two things need to be done:
I've updated the buildscript with a more minimal installation, removed unneeded dependancies from the modulefile, and re-done the installation. I was able to start MICpad with the following sequence:
module load micress
MICpad.sh
And I was able to run the Training > T00_02_Binary_E_Globulitic_2D_TQ.dri example for a few iterations on the login node.
The last thing I would like to try is running MICpad from the compute nodes.
I've verified that MICpad works well from the compute nodes. I logged in with X-forwarding (-Y) as the service account, started an interactive job, and ran the example to completion.
MICRESS is a software enabling the calculation of microstructure formation in time and space during phase transformations. Access is controlled by the license group
lgmicres
and the license is served by Mechanical Engineering IT. The installation is owned by theccspap2
service account.MICRESS documentation MICRESS buildscript MICRESS modulefile
MICRESS is currently functional in interactive mode.
MICpad is a GUI interface to MICRESS. Currently it does not run because some libraries need to be installed.