打印
[AVR单片机]

WINAVR中条件预编译的错误如何输出

[复制链接]
1470|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
swillow|  楼主 | 2013-12-20 18:25 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
在程序中有一段如下的预编译的代码,
#ifndef uint
#error  uint must be defined first
#endif
当程序中未定义uint这个宏时,编译会出错,但不会输出我要的提示 uint must be defined first,请问要如何设置Makefile才能输出这个错误提示

相关帖子

沙发
john_lee| | 2013-12-21 11:39 | 只看该作者
你确定是这个#error预编译指令导致的编译错误?最好能贴出编译出错信息。

使用特权

评论回复
板凳
swillow|  楼主 | 2013-12-21 12:09 | 只看该作者
是的,我专门写了一个测试程序来测试的,编译到有#error的文件就停下来了,在DoS窗口下用Make命令就会有提示这个错误,我现在怀疑我的UE没有配置好

使用特权

评论回复
地板
airwill| | 2013-12-21 12:14 | 只看该作者
我觉得这个不可用.
因为有可能 uint 是用 typedef 定义的.
这样 #ifndef 就不能识别了.

使用特权

评论回复
5
swillow|  楼主 | 2013-12-21 12:27 | 只看该作者
因为有这个问题,我写了一个很简单的测试程序,可以确定uint没有定义或者用typedef来定义

使用特权

评论回复
6
swillow|  楼主 | 2013-12-21 14:29 | 只看该作者
找到问题了,跟我猜想的一样,UE设置有问题,如下图取消Alternate Capture Method选项就好了,输出就正常了,具体这个选项是什么意思我现在还没搞明白,

使用特权

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

本版积分规则

4

主题

11

帖子

0

粉丝