ARM新安裝的mdk4.73版本出錯,是因為以前安裝了ADS1.2
解決辦法:
今天打開MDK4.70編譯程序時突然出現這樣的錯誤
C:\MDK\ARM\CMSIS\Include\core_cm3.h(120): error:#5: cannot open source input file "stdint.h"
C:\MDK\ARM\CMSIS\Include\core_cm3.h(120): error:#5: cannot open source input file "stdio.h"
C:\MDK\ARM\CMSIS\Include\core_cm3.h(120): error:#5: cannot open source input file "stdlib.h"
找了半天也沒找出原因,前幾天還能編譯通過。
后來我就在MDK4.70的安裝目錄下搜索"stdint.h"文件發現有這個文件,這就非常怪異了,難道是MDK配置頭文件路徑有錯誤從而找不到頭文件?
修改了n次都沒成功找到錯誤。只好卸載了,之后重裝還是出現一樣的錯誤。我就納悶了,明明用的好好的怎么就是不對呢!
后來我發現mak能找core_cm3.h文件,所以就把"stdint.h" "stdio.h""stdlib.h"這三個文件復制到:\ProgramFiles\MDK4.7\ARM\CMSIS\Include下。
結果還是出現了..\OBJ\test.axf:Warning: L6310W: Unable to find ARM libraries. 和找不到_main符號的錯誤。
于是在百度上搜了..\OBJ\test.axf:Warning: L6310W: Unable to find ARM libraries. 找到了
問題解決方案:
MDKV4.70版本,安裝完成后,打開工程編譯會出現如下警告與錯誤的 L6310W: Unable to find ARM libraries
我的電腦---->右擊屬性---->高級---->系統---->環境變量---->系統變量
刪除ADS的5個環境變量
在刪除上述ADS1.2的5個系統變量之后,再重新打開KEIL下的工程文件,再次編譯工程,OK!解決問題!
原來是前幾天我把ADS卸載了,但是它的環境變量還在,而它的其他的依賴(庫和一些文件沒了)MDK4.70每次編譯都去環境變量指定的地方
找標準的C庫當然找不到咯!這就能解釋為什么以前用的好好的,后來就總出錯。而且MDK4.12不受那個環境變量路徑影響。
較于以前的版本MDK4.70的庫文件和編譯器路徑更改了。都放在了:\ProgramFiles\MDK4.7\ARM\ARMCC文件中。
有時候需要制定 --libpath=D:\Keil\ARM\ARMCC\lib
|