Skip to main content
MKais.1
Associate
June 7, 2020
Question

libncurses.5 problem: I try to switch to the arm-none-eabi tools from my distro, how do I achieve that?

  • June 7, 2020
  • 5 replies
  • 2483 views

I ran into the well known problem with libncurses.5. My distro doesn't supply this old version of libncurses. Instead my distro supplies arm-none-eabi tools linked against libncurses.6.

I have two options:

  1. Try to install libncurses.5 from source. I think I might risk breaking my libncurses.6 installation on my computer. Thus I want to avoid that.
  2. Try to convince the IDE using the binaries supplied by my distro. I don't know how to do that. I went to the environment section in „Properties“ and removed the endless path within my homedirectory, but that doesn't impress the IDE, I still get the same error:

Could not determine GDB version using command: /home/ariser/st/stm32cubeide_1.3.0/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.linux64_1.0.0.201904181610/tools/bin/arm-none-eabi-gdb --version
/home/ariser/st/stm32cubeide_1.3.0/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.linux64_1.0.0.201904181610/tools/bin/arm-none-eabi-gdb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

How do I fix that problem?

5 replies

TDK
Super User
June 7, 2020

You can change the compiler by adding the path to the desired compiler in the PATH settings and remove the path to STM32CubeIDE's default compiler.

Project properties -> C/C++ Build -> Environment -> change PATH variable.

"If you feel a post has answered your question, please click ""Accept as Solution""."
MKais.1
MKais.1Author
Associate
June 8, 2020

0693W000001qHJ8QAM.png

Path changed.

0693W000001qHJIQA2.png

Error stays the same.

I restarted the program, I even did a reboot. Nothing changed.

What can I do next?

TDK
Super User
June 8, 2020

Works for me. Maybe it's hard coded into your PATH variable on startup. Do "which arm-none-eabi-gdb" and ensure nothing is found.

"If you feel a post has answered your question, please click ""Accept as Solution""."
MKais.1
MKais.1Author
Associate
June 8, 2020

which arm-none-eabi-gdb

brings only /bin/arm-none-eabi-gdb

I think it must be hard coded into STM32CubeIDE or something. I could delete the broken gdb and set a symlink to the working one. But that is really bad practice.

MKais.1
MKais.1Author
Associate
June 11, 2020

I finally removed the directory /home/ariser/st/stm32cubeide_1.3.0/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.linux64_1.0.0.201904181610/tools/bin and added a symlink to /bin. Error vanished as expected. But I'm dissatified that changing PATH from menu didn't have any effect so far. I think I can expect further problems associated with settings.

Best solution:

the arm-tools should be linked against libncurses6

and

the settings problems should be fixed

Where can I address that? Is there a bugtracking for the IDE?

Explorer
November 23, 2024

Thanks for your workaround. Amazingly this method still works after 4 years. And yes this issue has not been fixed yet...