cancel
Showing results for 
Search instead for 
Did you mean: 

Error due to GNU ARM toolchain usage in IAR workbench

sommer
Associate II
Posted on July 30, 2015 at 09:39

I recently started programming with STM32F4Discovery board and am using IAR workbench as the IDE. I am supposed to use an already developed program in Eclipse as a part of my project. When I imported this into IAR Workbench, I get the following error and warnings: `

Error[Pe020]: identifier ''_impure_ptr'' is undefined

Warning[Pe223]: function ''_REENT_INIT_PTR'' declared implicitly

Warning[Pe223]: function ''_reclaim_reent'' declared implicitly C`

I have realized that the `_impure_ptr`, `_REENT_INIT_PTR`, `_reclaim_reent` are a part of the `reent.h` file which are present in the GNU ARM Toolchain. This is being used as a part of the using FreeRTOS functionality. With Eclipse, this is not a problem, but when using IAR workbench, is there any other file similar to the `reent.h` for IAR Workbench that I am supposed to include?

I know it is a naive question but I am a beginner to embedded programming and still in the initial stages of setting up this project.

#iar-workbenc #!stm32f4-disco
1 REPLY 1
Posted on July 30, 2015 at 19:26

You'd want to use the include file that's designed to work with the IAR compiler. The IAR tools use their own compiler, which is not GNU/GCC based. There may be subtle differences in certain things are handled, like intrinsics, pragmas and inlined code.

Assembler files also tend to be customized for KEIL, IAR and GNU tools, and linker scripts and scatter files also differ in form/structure.

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..