SDK 3.2: Cannot load library libtinfo.so.5 on Arch (with workaround)

REPRODUCIBILITY (% or how often): 100
BUILD ID: 3068e2ef0a
HARDWARE: x86_64 laptop
UI LANGUAGE: english
REGRESSION: (compared to previous public release: Yes, No, ?): Yes

DESCRIPTION:

After upgrading the SDK to 3.2 on Arch, I am greeted with:

~/SailfishOS/lib/qtcreator/plugins/libClangTools.so: Cannot load library ~/SailfishOS/lib/qtcreator/plugins/libClangTools.so: (libtinfo.so.5: cannot open shared object file: No such file or directory)

PRECONDITIONS:

  • none

STEPS TO REPRODUCE:

  1. upgrade the SDK via maintenance tool
  2. launch the SFOS IDE
  3. Plugin Loader Messages pops up with said error message

EXPECTED RESULT:

  • IDE loads with full functionality

ACTUAL RESULT:

  • IDE loads with error message
  • feautures like autocomplete do not work

ADDITIONAL INFORMATION:

Workaround:

  1. Quit IDE
  2. sudo ln -s /usr/lib/libtinfo.so.6 /usr/lib/libtinfo.so.5
  3. Launch IDE

Did you tried to cleanup your build directory first?

rm -rf rpmbuilddir-*

Thanks for your reply! I don’t have such a dir. Why would this affect SDK start up nevertheless?

Ou, sorry. I don’t read your report properly… The second step of your workaround (ln -s) needs to be executed at your system, not in the SDK, right? Which linux distribution you are using? It works fine on my Kubuntu 20.04…

karry@LatitudeMachine:~$ ldd  ~/SailfishOS/lib/qtcreator/plugins/libClangTools.so | grep libtinfo
        libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007fbefa136000)
karry@LatitudeMachine:~$ dpkg -S /lib/x86_64-linux-gnu/libtinfo.so.5
libtinfo5:amd64: /lib/x86_64-linux-gnu/libtinfo.so.5
karry@LatitudeMachine:~$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.1 LTS"

libtinfo.so.5 comes from libtinfo5 package on my system…

Arch

Yes, that’s correct.

I think it just boils down to relying on system libraries, and being a RR distro Arch has a more recent version of libtinfo.

On RHEL 8 or Fedora, that fixes the issue: sudo yum install ncurses-compat-libs

1 Like

Thanks for the hint! For Arch there is ncurses5-compat-libs on AUR.

I’m quite sure that the workaround should no longer be needed with SDK 3.5.

I still had the symlink in place, and sometimes, when starting the IDE, it would just hang and not render. The only message when starting from cli was about libtinfo.so.5. That all disappeared after installing ncurses5-compat-libs.

1 Like

I’m running Manjaro and got the same error with SDK 3.5.7. After installing ncurses5-compat-libs on AUR and started SDK again it worked.

1 Like