keil 安装ADS后编译出错

今天拿到STM32F103RCT6最小系统板,看到文档介绍之后就开始第一步调试,刚好我身边有ulink调试工具,拿到了之后网上找了一番资料之后,最后通过安装MDK5之后自动安装了ulink的驱动,加入开发板的实例led灯之后可以运行,可是,刚刚修改好之后编译就报错了:
linking...
.\Obj\prj.axf: Warning: L6373W: libattrs.map file not found in System Library directory C:\Program Files\ARM\ADSv1_2\LIB\armlib\. Library selection may be impaired.
.\Obj\prj.axf: Warning: L6310W: Unable to find ARM libraries.
.\Obj\prj.axf: Error: L6411E: No compatible library exists with a definition of startup symbol __main.
Target not created
安装网上一些人提供的方法去做
以前使用arm的时候 安装了ADS的软件,所以出现了问题,但是卸载了该软件后还是不能编译
原因在于需要把环境变量删除才可以的
我的电脑->属性->高级-环境变量-path里面把d:\Program Files\ARM\ADSv1_2\bin;相似的这句话给删除了就可以了
可是最后又出现了新的问题C:\MDK\ARM\CMSIS\Include\core_cm3.h(120): error: #5: cannot open source input file "stdint.h。
后来我就在MDK5.0的安装目录下搜索"stdint.h"文件发现有这个文件,这就非常怪异了.。。
后来看到编译器可能是因为头文件的原因,跟路径有关。就在keil的target里面加入了刚刚找到了MDK5.0里面的路径D:\Program Files\keil\Keil_v5\ARM\ARMCC\include。最后还是出错,cannot found。当时很是无语,

keil 安装ADS后编译出错keil 安装ADS后编译出错

最后思考了一下环境变量的问题,可能是把该路径加入到系统环境变量path里面(前提是要把之前那个ADS的环境变量删除),

keil 安装ADS后编译出错

编译器就会从这里面去找了,结果真的编译通过了。。大功告成!

keil 安装ADS后编译出错



还有个方法是新建  变量名为ARMCC5LIB   变量值为C:\Keil\ARM\ARMCC\lib(你keil路径决定)  也能解决