Texmaker is not working after latest update of Ubuntu 22.04 LTS

Asked by Atanu Guha

Texmaker is not opening on icon-click and terminal gives the following error messages :-

texmaker: /opt/MarkAny/libs/libQt5PrintSupport.so.5: no version information available (required by texmaker)
texmaker: /opt/MarkAny/libs/libQt5Gui.so.5: no version information available (required by texmaker)
texmaker: /opt/MarkAny/libs/libQt5Widgets.so.5: no version information available (required by texmaker)
texmaker: symbol lookup error: texmaker: undefined symbol: _ZN17QAbstractItemView11eventFilterEP7QObjectP6QEvent, version Qt_5

Before mid-January 2023, everything was fine. I encountered this problem after the latest update.
I tried kile. The similar issue remains. How to fix this bug?

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu Edit question
Assignee:
No assignee Edit question
Solved by:
Manfred Hampl
Solved:
Last query:
Last reply:
Revision history for this message
actionparsnip (andrew-woodhead666) said :
#1

You may need to create some symbolic links to make the files exist

Revision history for this message
Manfred Hampl (m-hampl) said :
#2

There seems to be a conflict between different versions of libraries (and maybe even different versions of the program).

Ubuntu provides libQt5Gui.so.5, libQt5Widgets.so.5 and libQt5PrintSupport.so.5 in the directory /usr/lib/x86_64-linux-gnu/, but your program is using (apparent) foreign ones in /opt/MarkAny/libs/

For diagnostic purposes please provide the output that you receive for the following commands (to be executed ion a terminal window);

uname -a
lsb_release -crid
ls -l /opt/MarkAny/libs/libQt5Gui.so.5
ls -l /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
command -v texmaker

Revision history for this message
Atanu Guha (atanu-guha) said :
#3

Please find the following details.....

uname -a

Linux atanu-HP-Pavilion-Laptop-14-dv0xxx 5.15.0-41-generic #44-Ubuntu SMP Wed Jun 22 14:20:53 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

lsb_release -crid

Distributor ID: Ubuntu
Description: Ubuntu 22.04 LTS
Release: 22.04
Codename: jammy

ls -l /opt/MarkAny/libs/libQt5Gui.so.5

lrwxrwxrwx 1 atanu atanu 18 Jul 22 2019 /opt/MarkAny/libs/libQt5Gui.so.5 -> libQt5Gui.so.5.4.2

ls -l /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5

lrwxrwxrwx 1 root root 19 Jun 18 2022 /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 -> libQt5Gui.so.5.15.3

command -v texmaker

/usr/bin/texmaker

Revision history for this message
Best Manfred Hampl (m-hampl) said :
#4

Do you seen the difference in version numbers?
The foreign version in /opt/MarkAny/libs/ is version 5.4.2
The ubuntu-provided version in /usr/lib/x86_64-linux-gnu/ is version 5.15.3

I do not know where the libQT5 files in /opt/MarkAny/libs/ are coming from, but they interfere with Ubuntu's texmaker.
I suggest that you delete these files.

What happens when you force loading the Ubuntu-provided libraries with the command (in a terminal window)

LD_PRELOAD="/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 /usr/lib/x86_64-linux-gnu/libQt5PrintSupport.so.5 /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5" texmaker

Revision history for this message
Atanu Guha (atanu-guha) said :
#5

Thanks Manfred Hampl, that solved my question.

Revision history for this message
Atanu Guha (atanu-guha) said :
#6

Thanks a lot Manfred Hampl, that solved my problem.

LD_PRELOAD="/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 /usr/lib/x86_64-linux-gnu/libQt5PrintSupport.so.5 /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5" texmaker

This command loads the texmaker without any error.

I just replaced all the Qt libraries from the foreign version in /opt/MarkAny/libs/ (version 5.4.2) by the ubuntu-provided version in /usr/lib/x86_64-linux-gnu/ (version 5.15.3).

Now I can open texmaker and kile normally.

Is there any way to force texmaker to use the ubuntu-provided version of libQt? as it will be updated in future as well.

Revision history for this message
Manfred Hampl (m-hampl) said :
#7

"Is there any way to force texmaker to use the ubuntu-provided version of libQt?"

The LD_PRELOAD=... prefix is a workaround for forcing use of the Ubuntu-provided library version.

In my opinion the far better solution is taking care, that there are no outdated QT libraries elsewhere on your system, e.g. in the /opt/... dirctories.

Revision history for this message
Atanu Guha (atanu-guha) said :
#8

Thank you very much. Understood. I just searched and replaced all the outdated Qt libraries by the latest system version.

Thanks a ton for your time and effort.