久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9313|回復: 0
打印 上一主題 下一主題
收起左側

IAR for ARM "Error[Pe147]" and "Error[Pe337]" solution

[復制鏈接]
跳轉到指定樓層
樓主
ID:82083 發表于 2015-6-9 02:00 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
今天升級了一下IAR,發現之前編譯通過的程序報了很多類似的錯誤:Error[Pe147]: declaration is incompatible with "__nounwind__interwork __softfp unsigned long __get_PSP(void)"
(declared at linexx\CMSIS\CM3\CoreSupport\core_cm3.h)
報錯不約而同的指向了core_cm3.h這個文件。
百度了一下才知道:core_cm3.h文件太老了,與新版本的IAR6.5不兼容。
在IAR官網也找到了一篇描述相關問題的文章:
Problem
There is an issue with older versions of CMSIS and IAREmbedded Workbench for ARM (EWARM) version 6.20.1 and later. Thismay lead to build errors with CMSIS projects.
Theerrors are for example "Error[Pe147]" and "Error[Pe337]".Most ofthe errors comes from a CMSIS header file named core_cm3.h orsimilar.
緊接著也給出了具體辦法:
Solutions
Solution 1
Copya CMSIS based project from the present version, and use thatproject as the base to where you application is added.
Solution 2
Seethe release notes for the C/C++ Compiler (link to the right):
http://supp.iar.com/FilesPublic/UPDINFO/005832/arm/doc/infocenter/iccarm.ENU.html
Seethe chapter "A special note on CMSIS integration", specially thepart that starts with "However, ...".

Please note that excluding the CMSIS files from the exampleprojects, some functions required by the examples may disappear. Insuch a situation, just changing the include paths and excludingsome source files is not enough to fix the problem. If so,functions has to be moved from excluded files (likesystem_stm32f10x.c) to the source in the project in order to buildit.
Background
Thecompiler that comes with EWARM 6.20.1 and later has got support formore intrinsics than previous versions, which leads to anincompatibility issue with CMSIS source code that is included inprojects.
Theessence of the adjustment suggested in the release notes is to"remove" the CMSIS source code included in the project and insteaduse the CMSIS source code that is installed in EWARM, in the"arm\CMSIS" directory. Turn on
CMSIS usage in"Project>Options...>GeneralOptions>LibraryConfiguration>Use CMSIS".
Note that some of the CMSISexample projects in EWARM 6.20.1were affectedby the problem discussed above. This has been corrected inlater versions.
查了一下,網上也有類似解決方案的:
1,把老的core_cm3.h去掉,刪除,或者改成core_cm3.h.old。
2,Project -> Options -> General Options -> LibraryConfiguration -> Use CMSIS,右下角的選項中選擇 use CMSIS。
然后默默把core_cm3.h改為了core_cm3.h.old,勾選useCMSIS
0errors,0warnings



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品无码久久久久 | 国产精品成人一区二区三区夜夜夜 | 成人在线一区二区 | 精品麻豆剧传媒av国产九九九 | 欧美日韩国产传媒 | 做a视频| 一区二区三区国产好 | 欧美一二区| 成人在线免费视频 | 日韩在线观看中文字幕 | 中文字幕亚洲欧美 | 国产午夜精品久久久久 | 国产一区二区三区久久 | 国产精品1区2区3区 欧美 中文字幕 | 亚洲精品2 | 中文字幕1区 | 午夜寂寞网站 | 国产免费自拍 | av电影一区| 国产区在线免费观看 | 日本在线播放 | 日韩视频中文字幕 | 成人av片在线观看 | 玖玖精品视频 | 大学生a级毛片免费视频 | 亚洲成人精品一区二区 | 欧美福利在线 | 欧美日韩三级 | 久久精品免费一区二区三 | 国产精品久久网 | 精品一区二区三区在线观看 | 一级片在线观看 | 午夜激情视频 | 欧美激情一区二区三区 | 亚洲免费一 | 精品欧美色视频网站在线观看 | 久久精品成人一区 | 91在线看片 | 91精品国产乱码麻豆白嫩 | 久久9999久久| 亚洲一区中文字幕 |