cancel
Showing results for 
Search instead for 
Did you mean: 

IAR-Kickstart(V6), Win7, can't compile any of the demo code ???

davidm23
Associate II
Posted on May 17, 2011 at 05:12

Just trying to build the STM32-Discovery demo code using the IAR Embedded Workbench - Kickstart (V6.0) on a Windows 7 machine (32 bit). 

I downloaded the firmware, followed the instructions in UM0985 (User manual), and at the ''Rebuild All'' step (page 6) I get 72 errors; nearly all of them of the form:

Error[Pe147]: declaration is incompatible with ... 

I can't build any of the Discovery demo code without similar errors. I load the example workspace as indicated, change nothing, and still lots-o-errors.

Any idea regarding what's up?

Thanks, Dave,

7 REPLIES 7
kcurley
Associate
Posted on May 17, 2011 at 20:32

I am having the exact same problem trying to compile the iNemo demo firmware. I hope IAR systems or ST have a solution.  Its obvious they did not develop the code using the KickStart version.

davidm23
Associate II
Posted on May 17, 2011 at 22:44

Just an FYI, I was able to compile, download, and run a very complex project for the DSO nano oscilloscope.  I just had to fix a couple of paths (linker script etc.).  Yet these simple demos will not compile?

davidm23
Associate II
Posted on May 18, 2011 at 18:28

I got this response from IAR support:

''

It seems that ST hasn't upgraded the project yet for EWARM V6.0. The

examples are for V5.x.

Anyhow, in order to work with V6.0 you need to add the attached file to your

project and override the previous one.

Just copy it to: .\stm32vldiscovery_package\Libraries\CMSIS\CM3\CoreSupport

The problem is that the core_cm3.h is not compatible anymore with the

intrinsics.h from IAR.

I would also suggest using the EWARM V6.20 that is our latest versions

available at: 

http://www.iar.com/website1/1.0.1.0/675/1/

davidm23
Associate II
Posted on May 19, 2011 at 02:34

FYI, the fix above from IAR worked for me.  I also received the following response from ST support.  I have not confirmed it works, but thought I'd post it just in case anyone might need it ...

*************************************************************************************************

Hello,

The problem you are seeing is due to the new 6.20 release of IAR. There is a new handling of the CMSIS library that is now natively included into this release (for more details, see IAR 6.20 release note).

As a consequence, the project preprocessor inclusion of the folder containing ''core_cm3.h'' is obsolete and conflicts with the automatic inclusion of IAR ''intrinsics.h.''

You need to follow these two steps to solve the issue:

- Check ''Use CMSIS'' option from: Project options > General Options > Library Configuration

- Remove the CMSIS header files folder from the project preprocessor definitions (Project options > C/C++ compiler > Preprocessor

Please follow these two steps and then try to recompile your project.

Best regards,

MCU-Tech support

kyawlwin
Associate II
Posted on July 07, 2011 at 17:35

----------------------------------------------------------------------------------------------------------------------

Anyhow, in order to work with V6.0 you need to add the attached file to your

project and override the previous one.

Just copy it to: .\stm32vldiscovery_package\Libraries\CMSIS\CM3\CoreSupport

----------------------------------------------------------------------------------------------------------------------

Thanks David, It works for me, but there are some warning like

Warning[Pa050]: non-native end of line sequence detected (this diagnostic is only issued once) D:\MCU_Prog\ARM_IAR\stm32vldiscovery_package\Libraries\CMSIS\CM3\CoreSupport\core_cm3.h 1

But,

---------------------------------------------------------------------------------------------------------------------

You need to follow these two steps to solve the issue:

- Check ''Use CMSIS'' option from: Project options > General Options > Library Configuration

- Remove the CMSIS header files folder from the project preprocessor definitions (Project options > C/C++ compiler > Preprocessor

Please follow these two steps and then try to recompile your project.

-------------------------------------------------------------------------------------------------------------------------

this method does not work, anyway, thanks for sharing info

rosarium
Associate II
Posted on July 08, 2011 at 19:21

Copy the attched file intrinsics.h at path 

C:\Program Files\IAR Systems\Embedded Workbench 6.0\arm\inc\c

this will solve the compilation problem.

Just for your information kickstart version supports code size up to 32KB

kyawlwin
Associate II
Posted on July 10, 2011 at 13:35

+-------------------------------------------------------------------------------------------------------------+

this will solve the compilation problem.

+--------------------------------------------------------------------------------------------------------------+

Thanks, Pila, it works perfectly without warning.

Aung