cancel
Showing results for 
Search instead for 
Did you mean: 

Issue after updating to STM32CubeIDE 1.13.2

crwper
Senior

After updating to STM32CubeIDE 1.13.2, and updating my workspace, I'm suddenly getting warnings when compiling the STM32_WPAN SHCI library, followed by a handful of linker errors. The warnings are all in `shci.c` and look like this:

 

Project/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci/shci.c: In function 'SHCI_C2_FUS_GetState':
Project/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci/shci.c:57:98: warning: array subscript 'TL_CcEvt_t[0]' is partly outside array bounds of 'uint8_t[16]' {aka 'unsigned char[16]'} [-Warray-bounds]
   57 |     *p_error_code = (SHCI_FUS_GetState_ErrorCode_t)(((TL_CcEvt_t*)(p_rsp->evtserial.evt.payload))->payload[1]);
      |                                                                                                  ^~
Project/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci/shci.c:45:11: note: while referencing 'local_buffer'
   45 |   uint8_t local_buffer[TL_BLEEVT_CS_BUFFER_SIZE + 1];
      |           ^~~~~~~~~~~~

 

 The linker errors look like this:

 

C:/ST/STM32CubeIDE_1.6.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.1.202309131626/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: C:/ST/STM32CubeIDE_1.6.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.1.202309131626/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/softfp\libc_nano.a(libc_a-closer.o): in function `_close_r':
(.text._close_r+0xc): warning: _close is not implemented and will always fail
C:/ST/STM32CubeIDE_1.6.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.1.202309131626/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: C:/ST/STM32CubeIDE_1.6.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.1.202309131626/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/softfp\libc_nano.a(libc_a-lseekr.o): in function `_lseek_r':
(.text._lseek_r+0x10): warning: _lseek is not implemented and will always fail
C:/ST/STM32CubeIDE_1.6.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.1.202309131626/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: C:/ST/STM32CubeIDE_1.6.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.1.202309131626/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/softfp\libc_nano.a(libc_a-readr.o): in function `_read_r':
(.text._read_r+0x10): warning: _read is not implemented and will always fail
C:/ST/STM32CubeIDE_1.6.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.1.202309131626/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: C:/ST/STM32CubeIDE_1.6.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.1.202309131626/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/softfp\libc_nano.a(libc_a-writer.o): in function `_write_r':
(.text._write_r+0x10): warning: _write is not implemented and will always fail

 

Any idea what's going on here? As far as I know, I've made no changes to the project since it last compiled without issues.

1 ACCEPTED SOLUTION

Accepted Solutions
KDJEM.1
ST Employee

Hello @crwper ,

I think you have the same issue shared in this post

Please try to use this workaround:

Go to Windows > Preferences
Open the tab Error Parsers into C/C++ > Build > Settings
Select GNU Linker Error Parser, double click on the pattern for the 1st severity Ignore
Changer :
(.*?):?(\(\.[^\s+]+\+.*\))?:\s*(In function [`'"](.*)['"]:)
to :
(.*?):?(\(\.[^\s+]+\+.*\))?:\s*([Ii]n function [`'"](.*)['"]:)

Please let me know if the issue is solved.

Thank you.

Kaouthar.

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.

View solution in original post

3 REPLIES 3
KDJEM.1
ST Employee

Hello @crwper ,

I think you have the same issue shared in this post

Please try to use this workaround:

Go to Windows > Preferences
Open the tab Error Parsers into C/C++ > Build > Settings
Select GNU Linker Error Parser, double click on the pattern for the 1st severity Ignore
Changer :
(.*?):?(\(\.[^\s+]+\+.*\))?:\s*(In function [`'"](.*)['"]:)
to :
(.*?):?(\(\.[^\s+]+\+.*\))?:\s*([Ii]n function [`'"](.*)['"]:)

Please let me know if the issue is solved.

Thank you.

Kaouthar.

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.

This now seems to ignore the linker errors, but I still get warnings for the following items:

  • The "partly outside array bounds" issue mentioned above
  • The "not implemented an will always fail" issue mentioned above

As this code belongs to a bootloader which cannot be modified in the field, I want to be absolutely certain that these warnings won't affect function. Can you please explain to me in detail why these warnings started showing up when I updated the workspace, what they are indicating, and why you feel they can safely be ignored?

Thank you!

KDJEM.1
ST Employee

Hello @crwper ,

Thank you for your sharing this update.

The problem that is causing the failed build was described in CDT (https://github.com/eclipse-cdt/cdt/commit/1b2472faff2028f0323ad5c5eb85565f81b89053).

For more information about these warnings and how fixed them, I advise you to check this post and precisely @Peter BENSCH answer. 

KDJEM1_0-1695286366302.png

I hope this help you.

Kaouthar 

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.