cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeIDE requires libncurses.so.5, which is not provided on Fedora 37 anymore.

flxzt
Associate II

I recently updated my Fedora installation to the 37 beta. Because the package `ncurses-compat-libs` which provided the ncurses5 library was removed, I am unable to install STM32CubeIDE.

A fix would be to update the dependency to version 6, which is provided by Fedora 37 by `ncurses-libs`.

18 REPLIES 18
flxzt
Associate II

are there any plans to move to ncurses-6?

raptorhal2
Lead

In Ubuntu this works:

sudo add-apt-repository universe

sudo apt-get install libncurses5

flxzt
Associate II

unfortunately ncurses-5 is not in the repositories in fedora 37 anymore.

flxzt
Associate II

I managed to get it to install by compiling ncurses from source with the `--with-abi-version=5` parameter. Here is a small, rudimentary script for anyone facing the same issue:

#!/bin/bash
 
wget "https://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.3.tar.gz"
tar -xvf ncurses-6.3.tar.gz
cd ncurses-6.3
 
# args taken from `https://src.fedoraproject.org/rpms/ncurses/blob/f36/f/STAGE2-ncurses`
./configure --prefix=/usr/local \
    --with-shared --without-ada --with-ospeed=unsigned \
    --with-terminfo-dirs=/etc/terminfo:/usr/share/terminfo \
    --enable-hard-tabs --enable-xmc-glitch --enable-colorfgbg \
    --enable-overwrite \
    --enable-pc-files \
    --disable-wattr-macros \
    --with-termlib=tinfo \
    --with-chtype=long \
    --with-ticlib \
    --with-abi-version=5 # ABI version 5 produces `libncurses.so.5`
 
make
sudo make install

After running this, `/usr/local/lib` must be added to the library path if it isn't already and then STM32CubeIDE can be installed with the generic linux installer.

(It still would be nice if future versions upgrade to ncurses-6 to avoid having to do this)

Why CubeIDE needs libncurses at all? It is a GUI program.

Tx,

I managed to install ncurses5 from over here,

http://rpmfind.net/linux/rpm2html/search.php?query=libncurses.so.5

I took the Open Suse one and installed it with rpm. It complained about a missing dependency but I used the -- nodeps option thinking the dependency would already be there on F37. And so it was. After this cubemx installed... And runs OK.

Still, maybe it is a better idea to compile it like you did. But this was faster and it works apparently...​

Legacy member
Not applicable

Also did that I don't see any problems for now, but maybe this library is only used in a rare case so who knows. Also I didn't have any dependency errors when trying to install ncurses5 from there.

Maybe you used a different version? I used the "libncurses5-32bit-6.3.20221126-31.1.x86_64.rpm" Version that is build for "OpenSuSE Tumbleweed for x86_64"

Oops.. I just picked the first green one on the list,

​libncurses5-6.3.20221126-31.1.i586.rpm,

but that one is for i586, your choice is better 🙂

most of the time the first ones on the list are usually the right ones, but ​not this time.

still the i586 version did work as well, but I am going to reinstall for x86_64

tx.​

then again.. if the x86_64 version is 32 bits only, then maybe it does not matter... 🙂

I think it's just arm-none-eabi-gdb that sometimes needs it.. for when the --tui option is used.