打印
[51单片机]

C51嵌入汇编,KEIL4,编译输出*** FATAL ERROR L218: NOT AN OBJECT FILE

[复制链接]
7744|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
我是按照网上的一篇**配置keil4的:
汇编语言混合编程对Keil的设置.pdf (577.6 KB)



设置KEIL4后,发现上面的错误情况,于是我就恢复了原来的KEIL设置和文件状态,结果连原来编译通过的工程也变得编译不通过了,仍然出现上图的编译输出的错误信息。是不是我修改一次KEIL混合编程设置,然后KEIL就记住了,而且改不了了?

相关帖子

沙发
wangch_sh| | 2014-11-6 08:16 | 只看该作者
感觉不存在keil记住的问题。

使用特权

评论回复
板凳
ayb_ice| | 2014-11-6 08:58 | 只看该作者
按命名规则命名,参数传递规则传递参数就可以了

使用特权

评论回复
评论
18070474253 2021-7-1 11:23 回复TA
你好 问一下我调用别人的纯C封装的库也出现这个错误 链接的时候出现错误 不是一个目标文件 
地板
zxa123456|  楼主 | 2014-11-6 12:56 | 只看该作者
ayb_ice 发表于 2014-11-6 08:58
按命名规则命名,参数传递规则传递参数就可以了

原来编译通过的工程也变得编译不通过了哦

使用特权

评论回复
5
lyjian| | 2021-7-1 20:31 | 只看该作者
设置没搞对吧。
看一下前面编译显示什么错误。

使用特权

评论回复
6
William1994| | 2021-7-4 20:43 | 只看该作者
你的这个清空一下obj,重新编译应该就好了。
另外,你上传的这个pdf有几个错误:
1 C51S.lib ;  如果你不用small模型的话, 而且又用到了一些复杂的函数, 会有问题。  普通的int加减乘除等都没有事,因为加减乘除都只用了寄存器,在几个lib里面都是没有问题的。
2 寄存器部分。你用汇编写,keil有它的方式固定的分配寄存器,肯定有冲突啊。
3 using 2; 只要是你变量稍微一多,using几都会被keil分配的变量冲突掉。
4 xxx
5 xxx

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

16

帖子

0

粉丝