OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 25722|回复: 17

MDK4.5编译问题

[复制链接]

11

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2012-2-1
在线时间
14 小时
发表于 2012-6-3 08:54:20 | 显示全部楼层 |阅读模式
我新安装了MDK4.5,但在编译原子的串口实验时,却报cannot open source input file "stm32f10x_lib.h": No such file or directory……
郁闷了,原子的例程都没有用到库函数,而且我也没有用到库函数,怎么会出现这个报错呢?不解,求助。
抽刀断水水更流,提刀斩麻麻缠刀
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-6-3 09:19:45 | 显示全部楼层
可能名字变了,你打开keil4自带的例子看看。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2012-6-22
在线时间
3 小时
发表于 2012-6-22 21:53:07 | 显示全部楼层
我也碰到这个问题,请问有解决方法了吗?
回复 支持 反对

使用道具 举报

2

主题

1446

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2256
金钱
2256
注册时间
2010-12-16
在线时间
206 小时
发表于 2012-6-23 01:23:52 | 显示全部楼层
stm32f10x_lib.h
->
stm32f10x.h
技术讨论请发帖 , 需要我回复请点左下的 < 回复 > 让系统通知我 . 本人不通过其他方式返回任何参数.
回复 支持 反对

使用道具 举报

头像被屏蔽

263

主题

455

帖子

1

精华

禁止访问

积分
1212
金钱
1212
注册时间
2011-9-25
在线时间
12 小时
发表于 2012-6-24 08:46:37 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

11

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2012-2-1
在线时间
14 小时
 楼主| 发表于 2012-6-24 17:37:04 | 显示全部楼层
是的,3楼、4楼说的不错,造成报错的原因是头文件换名字了。当时原子老大提示“名字变了”之后,我对比了4.23版本和4.53版本这两个不同版本ST文件夹下的.h文件,发现里面的.h文件有变化。当我把4.23版本ST文件夹下STM32F10x文件夹里面的文件全部复制到4.53版本下的相同位置,再次编译程序,问题解决了。如果现在还有遇到这个问题的朋友,可以按下面的方法自己对比一下就可以发现问题了:
在MDK安装文件夹下,按以下顺序打开文件夹\ARM\INC\ST\STM32F10x,对比4.53版和4.23版这两个文件夹,你会发现,4.53版在文件夹下,只有4个.h文件了,而在4.23版的STM32F10x文件夹下,却有40个.h文件!问题就出在这里了!!我再对比了以前的几个版本,STM32F10x文件夹下都是40个.h文件。
原子老大当时编程时,用的是3.8版的程序,所以在.c文件中,引用了"stm32f10x_lib.h"这个.h文件,程序编译后是不会报错的,而在4.50版以后,由于keil更新了ST的库文件,如果此时使用原子老大在3.8版下写的程序用4.50版以后的编译器编译,就肯定会报"cannot open source input file "stm32f10x_lib.h": No such file or directory……”。
解决的方法有2个:
1.将4.50版以前(任何一个版本都可以)\ARM\INC\ST\STM32F10x文件夹下的文件全部复制到你现在使用的版本程序的相同文件夹里面;
2.将现在报错的编译程序删掉,重新安装回4.50版以前的程序;
抽刀断水水更流,提刀斩麻麻缠刀
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-6-24 21:03:09 | 显示全部楼层
楼上总结的不错.学习了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
119
金钱
119
注册时间
2012-7-16
在线时间
12 小时
发表于 2012-10-3 10:39:43 | 显示全部楼层

             我试了一下,可以有别的方法,我就拿原子君的ucgui来说把“ALIENTEK MINISTM32 实验29 ucGUI移植实验”。实验编译后有:cannot open source input file "stm32f10x_lib.h": No such file or directory错误提示。解决此问题可以如下操作:(前提:代码中含有当前例程使用的库文件函数头文件等)

在project terget右击=》Options for target=》C/c++=》Include path=》新建=》浏览=》加入library的inc和src文件夹

我试过可以消除错误,大家不妨试试看,不建议更改原来安装的库,可能以后会有麻烦还要改回来,建议使用当前工程更改,以便移植方便!

努力中……
回复 支持 反对

使用道具 举报

1

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
67
金钱
67
注册时间
2012-6-15
在线时间
0 小时
发表于 2012-12-4 10:24:49 | 显示全部楼层
4.5以后的版本建议使用库函数版本,当然写寄存器是要看着方便些,我也期待大家有更好的解决方案
电子爱好者,技术在交流中进步;技术交流QQ群:191990060(STM32) 74576566(综合电子设计类)
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2011-2-4
在线时间
4 小时
发表于 2012-12-4 20:20:29 | 显示全部楼层
今日出现此问题,在此看到解决方法,谢谢!
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2013-8-22
在线时间
0 小时
发表于 2013-8-23 12:05:24 | 显示全部楼层
回复【8楼】guyspring:
---------------------------------
inc和src文件夹在哪里?
回复 支持 反对

使用道具 举报

230

主题

1950

帖子

10

精华

论坛元老

Rank: 8Rank: 8

积分
4562
金钱
4562
注册时间
2010-12-14
在线时间
32 小时
发表于 2013-8-23 14:00:30 | 显示全部楼层
回复【11楼】无极侠:
---------------------------------
这个在你的固件库包里面
我是开源电子网?网站管理员,对网站有任何问题,请与我联系!QQ:389063473Email:389063473@qq.com
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2013-8-22
在线时间
0 小时
发表于 2013-8-23 14:28:36 | 显示全部楼层
回复【12楼】Admin:
---------------------------------
这个没能解决,重新安装MDK3.8
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2013-8-22
在线时间
0 小时
发表于 2013-8-24 10:49:14 | 显示全部楼层
诶,没法子,只好重新安装MDK3.8了
回复 支持 反对

使用道具 举报

3

主题

8

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2014-8-21
在线时间
0 小时
发表于 2014-9-9 22:01:46 | 显示全部楼层
回复【6楼】乱麻缠刀:
---------------------------------
我试了一下出现其他问题,我用的是MDK4.7,把3.8版本的加载到4.7里面后出现下面问题
stm32f10x_wwdg.c: Error:  #5: cannot open source input file "..\..\STM32F10XFWLIB\src\stm32f10x_wwdg.c": No such file or directory
回复 支持 反对

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
28
金钱
28
注册时间
2014-7-28
在线时间
0 小时
发表于 2015-1-23 09:53:13 | 显示全部楼层
回复【6楼】乱麻缠刀:
---------------------------------
解決了!
回复 支持 反对

使用道具 举报

3

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2015-7-6
在线时间
6 小时
发表于 2015-7-14 10:14:34 | 显示全部楼层
我把汉字显示的文件移植到ADC实验 出现是同样问题~~
flash.c: Error:  #5: cannot open source input file "..\..\ALIENTEK MINISTM32 脢碌脩茅30 潞潞脳脰脧脭脢戮脢碌脩茅\HARDWARE\FLASH\flash.c": No such file or directory
nothing is impossible
回复 支持 反对

使用道具 举报

0

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
97
金钱
97
注册时间
2012-11-11
在线时间
6 小时
发表于 2015-7-14 14:41:54 | 显示全部楼层
谢谢分析,学习了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-20 05:56

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表