Skip to main content
Associate
September 24, 2025
Solved

STM32 Cube Programmer CLI v2.20 JLink broken in Linux

  • September 24, 2025
  • 2 replies
  • 734 views

Hi everyone,

I'm using STM32 Cube Programmer CLI to port an SBSFU example to STM32U5G9 platform (from U585). Other than shell script mess and no IOC files in this examples, I've managed to port the example and run it by using ST Link programmer under both Linux and Windows.

The problem is that the newest release 2.20 has its J-Link functionality completely broken in Linux (I'm using Kubuntu 22.04 and 24.04, also tested in regular Ubuntu). Any command to STM32_cube_programmer_CLI ends up with:

Error: Could not connect to the J-Link/Flasher, Library not found !

The underlying issue is that libjlinkarm.so is not linked to the CLI executable: ldd shows it's linked for older versions, but no linkage for v2.20. I'm guessing this has happened since ST was finally moving away from weird versioned so names to non-versioned so's: i.e. libjlinkarm.so.7 -> libjlinkarm.so

I'm hoping that someone from ST will read this message since the issue is not possible to resolve without re-linking... So @st_it, could you please fix this?

Best answer by Maryem

Hello @ikozic and welcome to the Community,

 

Thank you for sharing your detailed feedback. We are aware of the problem with J-Link in STM32CubeProgrammer CLI in v2.20.0 on Linux and it will be fixed in a future release.

Internal ticket number: 218301 (This is an internal tracking number and is not accessible or usable by customers).

Thanks for your understanding.

Maryem.

2 replies

Maryem
MaryemBest answer
Technical Moderator
September 24, 2025

Hello @ikozic and welcome to the Community,

 

Thank you for sharing your detailed feedback. We are aware of the problem with J-Link in STM32CubeProgrammer CLI in v2.20.0 on Linux and it will be fixed in a future release.

Internal ticket number: 218301 (This is an internal tracking number and is not accessible or usable by customers).

Thanks for your understanding.

Maryem.

ikozicAuthor
Associate
September 24, 2025

Hi Maryem,

Thanks for prompt reply! Appreciate the effort! On our side, we will try to live with 2.19 although it has its fair share of J-Link related issues as well. I'll continue testing in the following days and post back with a new topic if needed.

I have already noticed that my J-Trace v4.0 for Cortex A/R/M seems to be too new for the libjlinkarm that you're integrating, so I normally anyway replace it with a newer SEGGER supplied one. I would strongly suggest bumping up the library version since it is almost a major apart (v7.92 Cube vs. v8.72 Segger) if at all possible

Cheers!

ikozicAuthor
Associate
September 24, 2025

I've attached the output of 'ldd', with libjlinkarm.so linkage clearly missing from the 2.20 STM32_Programmer_CLI executable. Funny enough, the UI works since it uses API and not the CLI version. I can verify that lib/libCubeProgrammer_API.so v2.20 has the libjlinkarm properly linked