免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 862 | 回复: 0
打印 上一主题 下一主题

[原]arm-gcc编译链接错误收集(更新中) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-22 19:54 |只看该作者 |倒序浏览
尽可能的把我遇见过的编译错误收集起来



1. xxx : undefined reference to 'func'
未找到func的实现,可能的原因有:
a.func可能只给出了定义,但未实现
b.函数名写错
c.该函数实现在库中,但是该库未被链接

2.error: 'var' undeclared (first use in this function)
使用了未定义的变量

3.error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
出现这个错误的原因有很多,可能是因为某个地方少了或多了符号,另外
往往在使用
#ifdef __cplusplus
extern "C" {
#endif

时出现这个错误,需要注意.(具体产生原因,有待研究)

4.linux/uio.h:17: error: redefinition of 'struct iovec'
这个问题的出现主要跟使用的交叉编译工具有关系
在我的编译工具头文件里仔细看了下,的确有导致重定义的地方,在cutils/uio.h以及linux/uio里均有这个结构的定义,用宏进行了控制,而该宏未打开时这个结构会被定义两次.
不同的工具可能出现这个问题的原因也不一样.
网上有一种情况是编译工具的头文件与系统默认路径下的有冲突
5.error: expected expression before 'int'
我是在使用了ioctl但是没有包含sys/ioctl.h时报了这个错误,初看这个错误没有什么头绪,但是仔细分析这个仍然和未定义函数有关系

6.error: 'bool' undeclared    c语言中是没有bool这种数据类型的,一般用整型来代替.#define bool int or #define bool short


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/85193/showart_1935779.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP