c - 如何修复: struct _reent r = {0,(FILE *)0}? struct _reent 是任何工具链的一部分吗?

标签 c cross-compiling atmel

使用arm交叉编译器编译Atmel示例时得到:

../at91lib/utility/stdio.c:64:8:错误:变量“r”具有初始值设定项,但类型不完整

代码是:

struct _reent r = {0, (FILE *) 0, (FILE *) 1, (FILE *) 0};

我不知道我在这里能做什么,因为我首先需要理解这段代码的含义?

然后我可以为我的编译器重新编码吗?或者我必须将编译器降级到其他版本吗?

我的版本: arm-unknown-linux-uclibcgnueabi-gcc(Buildroot 2012.05-git-00423-g4205dbd)4.5.3

最佳答案

来自AT91SAM community :

It looks like you have to use exactly the right version of compiler: To get sam-ba applets to compile under linux you have to use Sourcery G++ Lite 2008q3-39 for ARM EABI from http://www.codesourcery.com/sgpp/lite/arm/portal/release567 Anything newer or older gives (different) errors.

关于c - 如何修复: struct _reent r = {0,(FILE *)0}? struct _reent 是任何工具链的一部分吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10528536/

相关文章:

c - AVR 9 位 Usart 不工作 (MPCM)

c++ - kde 固定按钮 API

CMAKE 没有为内部共享库制定目标的规则

c - 使用 INTEL PIN 在 64 位系统上配置 32 位应用程序

dll - 是否可以在平板电脑上运行我的 Windows 8 C/go/html 程序

c - 请求非结构或 union 中的成员 'isr_status'

css - GTK 3 如何在 css 文件中选择笔记本的事件选项卡

ios - 奇怪的 atoi(char *) 问题

c++ - 组织跨平台的C/C++项目

assembly - AVR 程序必须始终以相对跳转指令开头吗?