2023-12-01
10:44 AM
- last edited on
2023-12-05
04:01 AM
by
Lina_DABASINSKA
Hi all,Ihave a project on stm32cubeide and I use threadx in mu nucleo-144-u575zi-q .I 've used PTHREAD_ONCE_INIT and put #include <tx_opsix.h> in my code but the compiler not found that file. I found it in C:\Users\Roberto\STM32Cube\Repository\STM32Cube_FW_U5_V1.3.0\Middlewares\ST\threadx\utility\rtos_compatibility_layers\posix\ so I open the window "project/properties/path&symbol/includes and I 've added this path from the voice "filesystem" because in my workspace in C:\Users\Roberto\STM32Cube\Repository\STM32Cube_FW_U5_V1.3.0\Middlewares\ST\threadx\utility\rtos_compatibility_layers\ path there is only "low_power" folder and not "posix"(WHY?).
The compiler found tx_posix.h now but it give me this error :
In file included from ../Core/ThreadSafe/newlib_lock_glue.c:66:
../Core/ThreadSafe/newlib_lock_glue.c: In function '__retarget_lock_init_recursive':
C:/Users/Roberto/STM32Cube/Repository/STM32Cube_FW_U5_V1.3.0/Middlewares/ST/threadx/utility/rtos_compatibility_layers/posix/errno.h:52:15: error: 'posix_errno' undeclared (first use in this function)
52 | #define errno posix_errno
| ^~~~~~~~~~~
../Core/ThreadSafe/newlib_lock_glue.c:126:5: note: in expansion of macro 'errno'
126 | errno = EINVAL;
| ^~~~~
C:/Users/Roberto/STM32Cube/Repository/STM32Cube_FW_U5_V1.3.0/Middlewares/ST/threadx/utility/rtos_compatibility_layers/posix/errno.h:52:15: note: each undeclared identifier is reported only once for each function it appears in
52 | #define errno posix_errno
| ^~~~~~~~~~~
../Core/ThreadSafe/newlib_lock_glue.c:126:5: note: in expansion of macro 'errno'
126 | errno = EINVAL;
| ^~~~~
make: *** [Core/ThreadSafe/subdir.mk:19: Core/ThreadSafe/newlib_lock_glue.o] Error 1
make: *** Waiting for unfinished jobs....
"make -j8 all" terminated with exit code 2. Build might be incomplete.
17:40:09 Build Failed. 3 errors, 24 warnings. (took 15s.422ms)
Someone can help me?
Thanks in advances
because in workstation (despite at beginning of project I've select "THREADX" and I have AZURE_RTOS and