Skip to main content
sommer
Associate II
July 30, 2015
Question

Error due to GNU ARM toolchain usage in IAR workbench

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
This topic has been closed for replies.

1 reply

Tesla DeLorean
Guru
July 30, 2015
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 (See Profile) Up vote any posts that you find helpful, it shows what's working..