Skip to main content
Associate
July 14, 2026
Question

Stm32CubeIDE for Visual Studio Code - The project conversion tool doesn't copy over assembly files, .s files.

  • July 14, 2026
  • 3 replies
  • 54 views

As the title describes, the conversion tool to convert Stm32CubeIDE projects over to Visual Studio Code seems to work. Apart from the fact that, at least in my case, it failed to copy over the assembly files, .s files, in the project.

 

Which led to build errors, specifically thumb mode errors.

Just posting this here so that it may help others. Not quite sure how best else to let others know.

3 replies

Nawres GHARBI
ST Technical Moderator
July 15, 2026

Hi ​@ad101 

do you have any project to share please ?

Julien D
ST Employee
July 16, 2026

Hi ​@ad101,

As Nawres mentioned, could you give more details about your project, especially where the assembly sources are located? Are they in the project tree, or somewhere on disk as linked resources?

I just tried it myself: I defined new asm_utils.s and asm_utils.h files in an empty STM32CubeIDE project, used the functions in main.c, built it successfully in STM32CubeIDE, converted the project in VS Code, and then built it successfully in VS Code too.

I attached the sample.

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
ad101Author
Associate
July 20, 2026

Hi there,

The files that fail to copy over during the conversion are from the threadx libraries.

The files were missing after the conversion so I had to copy them over and also make changes to the generated .cmake to successfully build.

vscode_generated.cmake:
 

# Add sources to executable/library
target_sources(${BUILD_UNIT_0_NAME} PRIVATE



# Add the missing low-level initialization assembly file:
"Core/Src/tx_initialize_low_level.S"

# Add the missing Core ThreadX Cortex-M33 Assembly ports:
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_thread_context_restore.S"
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_thread_context_save.S"
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_thread_interrupt_control.S"
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_thread_interrupt_disable.S"
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_thread_interrupt_restore.S"
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_thread_schedule.S"
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_thread_stack_build.S"
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_thread_system_return.S"
"Middlewares/ST/threadx/ports/cortex_m33/gnu/src/tx_timer_interrupt.S"
)


STM32CubeIDE

 

Version: 2.1.1

Build: 28236_20260312_0043 (UTC)




Version: 1.124.0 (user setup)
Commit: 1b50d58d73426c9171299ec4037d01365d995b78
Date: 2026-06-09T21:29:32-07:00
Electron: 42.2.0
ElectronBuildId: 14159160
Chromium: 148.0.7778.97
Node.js: 24.15.0
V8: 14.8.178.14-electron.0
OS: Windows_NT x64 10.0.26200