andorid编译报错serve_image.c:32:18: error: storage size of ‘hints’ isn’t known
来源:互联网 发布:淘宝订单状态 编辑:程序博客网 时间:2024/06/07 06:00
在编译海思SDK时,会出现如下错误:
serve_image.c:32:18: error: storage size of ‘hints’ isn’t known
serve_image.c:94:19: error: ‘AI_ADDRCONFIG’ undeclared (first use in this function)
serve_image.c:99:40: warning: implicit declaration of function ‘gai_strerror’ [-Wimplicit-function-declaration]
fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(ret));
fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(ret));
serve_image.c:103:35: error: dereferencing pointer to incomplete type ‘struct addrinfo’
make[6]: *** [/home/sky2_klockwork/motianbiao/hmtisi/sdk/kitkat/out/target/product/Hi3798MV100/obj/TOOLS_OBJ/mtd-utils/tmp/mtd-utils-1.5.0/serve_image.o] Error 1
make[5]: *** [/home/sky2_klockwork/motianbiao/hisi/sdk/kitkat/out/target/product/Hi3798MV100/obj/TOOLS_OBJ/mtd-utils/tmp/sbin/mkfs.jffs2] Error 2
make[4]: [mkmtdutils_tool] Error 1 (ignored)
make[4]: [mkmtdutils_tool] Error 1 (ignored)
make[4]: [mkmtdutils_tool] Error 1 (ignored)
究其原因,在于ubuntu操作系统版本太高,而SDK使用的mtd-utils版本太低导致(device/hisilicon/bigfish/sdk/tools/linux/utils/mtd-utils/mtd-utils-1.5.0),正常情况下,ubuntu12.04.04下支持mtd-utils-1.5.0,但是ubuntu16.04版本兼容不是很好,但是16.04支持mtd-utils-2.0.0版本,所以,解决办法有如下几种:
方法1.修改sdk版本下的mtd-utils-1.5.0为mtd-utils-2.0.0,可以在root权限下通过命令:wget ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-2.0.0.tar.bz2 获取,然后替换device/hisilicon/bigfish/sdk/tools/linux/utils/mtd-utils/下的mtd-utils-1.5.0.tar.bz2版本
方法2.修改操作系统头文件/usr/include/netdb.h,将此宏__USE_XOPEN2K注释,如下图(注意#ifdef与#endif是一一对应的)
方法3.当然是修改操作系统的内核版本咯,可以通过如下命令更换操作系统内核版本:
- andorid编译报错serve_image.c:32:18: error: storage size of ‘hints’ isn’t known
- linux c TCP/IP 编译问题 error: storage size of ‘addrCriteria’ isn’t known解决办法
- linux c TCP/IP 编译问题 error: storage size of ‘addrCriteria’ isn’t known解决办法
- error: storage size of 'rq' isn't known 正解
- error storage size of 'pwbuf' isn't known
- error: storage size of ‘server_addr’ isn’t known
- error: storage size of ‘md_ctx’ isn’t known
- 报错storage size of ‘act’ isn’t known当使用std=c99编译struct sigaction
- storage size of ‘oldact’ isn’t known
- storage size of 'a' isn't known
- storage size of ‘XXX’ isn’t known
- recv_image.c:129 : error: storage size of 'rq' isn't known
- C/C++ error: storage size of ‘tv’ isn’t known错误解决方法
- error: storage size of ‘rlimit_fsize’ isn’t known struct rlimit rlimit_fsize;
- error: storage size of ‘timeout’ isn’t known struct timeval timeout
- 编译jffs2报struct addrinfo storage size isn't known错误
- storage size of `seraddr' isn't known #include
- storage size of 'value' isn't known问题出现的可能原因
- 单例模式
- java8 lambuda表达式
- Lua学习笔记
- Redis的5种数据类型
- Sublime Text3 常用设置和插件
- andorid编译报错serve_image.c:32:18: error: storage size of ‘hints’ isn’t known
- 数据库——关系数据库的设计
- nginx 505 问题
- NSDate 获取当前时间不正确
- eclipse里面的alt+/不给提示, 只是补全代码的解决方法
- Trailing Zeroes (III)
- Matlab批量修改文件名
- ?350. Intersection of Two Arrays II (Java)
- 题目111-分数加减法