Skip to main content
GBeto.1
Associate
March 20, 2023
Solved

Can't compile X-Cube-Cellular TCP_Echo_Client example

  • March 20, 2023
  • 5 replies
  • 2676 views

Hi,

I'm running STM32Cube 1.11.2 under Ubuntu 22.04

While I can compile the TCP_Echo_Client_PPP example with no issue, I can't do the same with TCP_Echo_Client.

The compilation issue is the tx_thread_schedule.s has undefined references to _tx_thread_secure_stack_context_save, _tx_thread_secure_stack_context_restore, _tx_thread_secure_mode_stack_allocate, _tx_thread_secure_mode_stack_free and _tx_thread_secure_mode_stack_initialize

This issue is systematic, including trying with a fresh new workspace.

Thank you for your help,

Guillaume

This topic has been closed for replies.
Best answer by Ronan GABOU

Hello,

In the IDE project in the following directory:

Middlewares\ST\threadx\ports\cortex_m33\gnu\src\

replace the 9 files .s with .S

It should solve you compilation issue.

Ronan,

5 replies

GBeto.1
GBeto.1Author
Associate
March 21, 2023

I finally succeded but I'm not sure this is the right answer :

  • in Middlewares/ThreadX/ports/cortex_m33/gnu/src I only have *.S files ('S' is uppercase)
  • when compiling it generates some the same filenames, but with *.s extension (lowercase)
  • those files do not have same content, and moreover do not contains the #if to avoid compiling the 'secure' part
  • I did simply override those .s files with originals .S files

=> compiles and seems to run OK

Maybe this is a Linux only issue ?

Ronan GABOU
Ronan GABOUBest answer
ST Employee
March 22, 2023

Hello,

In the IDE project in the following directory:

Middlewares\ST\threadx\ports\cortex_m33\gnu\src\

replace the 9 files .s with .S

It should solve you compilation issue.

Ronan,

GBeto.1
GBeto.1Author
Associate
March 22, 2023

It's the opposite : I have to rename de 9 files .S with .s :D

But thank you for the confirmation.

Ronan GABOU
ST Employee
March 22, 2023

If you modify in the IDE as I suggested you must change .s in .S (because the files on disk are .S)

If you prefer change on the disk you can change .S in .s but other projects won't work anymore.

So it is up to you to decide the preferred correction.

Ronan,

GBeto.1
GBeto.1Author
Associate
March 22, 2023

Oh yes got it, thanks a lot.