linux sysinfo结构体,编译BusyBox出现错误: struct sysinfo 重定义 该如何解决?
Busybox 1.13.3和其他的1.16版本都是如此 arm-linux-gcc version=4.3.3
===========================================================================================================
networking/slattach.c:232:13: 警告: 提领类型双关的指针将破坏强重叠规则 [-Wstrict-aliasing]
networking/slattach.c:241:9: 警告: 忽略声明有 warn_unused_result 属性的‘system’的返回值 [-Wunused-result]
CC networking/tcpudp.o
In file included from /usr/include/linux/sysctl.h:25:0,
from /usr/include/linux/netfilter.h:6,
from /usr/include/linux/netfilter_ipv4.h:8,
from networking/tcpudp.c:35:
/usr/include/linux/kernel.h:12:8: 错误: ‘struct sysinfo’重定义
include/libbb.h:94:8: 附注: 原先在这里定义
networking/tcpudp.c: 在函数‘xsetenv_plain’中:
networking/tcpudp.c:72:3: 警告: 提领类型双关的指针将破坏强重叠规则 [-Wstrict-aliasing]
networking/tcpudp.c: 在函数‘xsetenv_proto’中:
............
...........
networking/tcpudp.c:452:7: 警告: 提领类型双关的指针将破坏强重叠规则 [-Wstrict-aliasing]
networking/tcpudp.c:454:8: 警告: 提领类型双关的指针将破坏强重叠规则 [-Wstrict-aliasing]
networking/tcpudp.c:457:6: 警告: 提领类型双关的指针将破坏强重叠规则 [-Wstrict-aliasing]
networking/tcpudp.c:457:20: 警告: 提领类型双关的指针将破坏强重叠规则 [-Wstrict-aliasing]
networking/tcpudp.c:489:8: 警告: 提领类型双关的指针将破坏强重叠规则 [-Wstrict-aliasing]
networking/tcpudp.c:490:42: 警告: 提领类型双关的指针将破坏强重叠规则 [-Wstrict-aliasing]
make[1]: *** [networking/tcpudp.o] 错误 1
make: *** [networking] 错误 2
====================================================================================
于是我直接进入include/ 然后 vim libbb.h 看到里面的在Line 92中有一个struct info的定义,然后里面有说明:
90 /* Include our own copy of struct sysinfo to avoid binary compatibility
91 * problems with Linux 2.4, which changed things. Grumble, grumble. */
看来,我认为直接注释掉就行了,因为我用的是Linux 2.6的内核
于是用
#if 0
#endif
完成对这段的注释,但是还是出错,说struct sysinfo仅仅是形参,该如何处理呢?
linux sysinfo结构体,编译BusyBox出现错误: struct sysinfo 重定义 该如何解决?相关推荐
- sysinfo结构体
sysinfo结构体 Linux中,可以用sysinfo来获取系统相关信息. Linux中,sysinfo是用来获取系统相关信息的结构体. 函数声明和原型: #include <sys/sysi ...
- linux tty结构体,linux tty驱动架构分析
再看Linux tty驱动过程中发现linux的驱动构架中,面向对象的思想已经根深蒂固.就比如这串口驱动,代码中经常有一些貌似和串口无关的代码,比如,tty_register_driver等.但我们却 ...
- Linux SKB结构体中各个长度字段的含义(len, data_len, headlen, pagelen)
结构体sk_buff是Linux内核网络子系统的一个基本结构体,关于它的长度有很多定义和操作,非常容易弄混,这里给出一个简单的说明. 下面这幅图是<深入理解Linux网络技术内幕>里面的图 ...
- [Vs提示:不允许使用不完整类型]使用结构体常犯的错误
浪费您各位一点时间 这是关于一个在使用结构体时常犯的错误,错误很简单改正 对于初学者来说,很容易犯,很难发现 首先给出代码,请未来的大佬垂阅 #include <iostream> usi ...
- 【Go语言刷题篇】Go完结篇|函数、结构体、接口、错误入门学习
Go从0到入门6-Go完结篇 前言 Q1:函数-数字的阶乘 Q2:函数-绝对值 Q3:函数-加减乘除 Q4:结构体-学生信息1 Q5:结构体-学生信息2 Q6:接口-动物和老虎 Q7:错误-网络延迟 ...
- linux c 结构体参数,C语言结构体类型定义
C语言结构体类型定义 结构体的定义形式如下: struct 结构体名 { 结构体成员 }: 结构体变量的定义方式有三种: 1.先定义结构体,再定义变量: eg. struct student{ cha ...
- linux sysinfo结构体,struct sysinfo 用法
在Linux中,sysinfo是用来获取系统相关信息的结构体,其原型如下: struct sysinfo { long uptime; /* Seconds sin ...
- linux windows 结构体,Linux下C语言——结构体对齐
结构体对齐的步骤: 1.结构体各成员对齐 2.整个结构体圆整 结构体对齐的特定对齐值: 1.自身对齐值: 自身对齐值就是结构体变量里每个成员的自身大小; 2.指定对齐值: 指定对齐值是由宏#pragm ...
- linux c 结构体初始化的四种方法
定义: struct InitMember {int first:double second:char* third:float four; }; 方法一:定义时赋值 struct InitMembe ...
最新文章
- Linux 2 的 Windows 子系统上发布 CUDA
- 二分图匹配的匈牙利算法
- 随机森林和决策树区别_第六讲 决策树与随机森林
- 集线器(Hub)、交换机(Switch)与路由器(Router)之间的区别和联系
- 常用正则表达式 验证电子邮件网址邮政编码等
- 论文阅读笔记(四)【ACL 2021】FEW-NERD: A Few-shot Named Entity Recognition Dataset
- 操作系统文件分配策略_操作系统中的文件分配方法
- 最简单的小程序怎么做?
- ESP8266固件SDK开发初体验-让ESP8266打印helloworld(基于安信可ESP-07)
- 小学计算机课程目录五年级,小学信息技术课程目录.doc
- 什么是CSS hack及写法
- 天津科技大学计算机二级报名,2018年9月天津计算机二级报名6月20-25日
- 源码安装禅道11.0总结
- m277打印机 重置_惠普M277n打印机使用说明书(惠普M277n打印机使用指南PDF资料)V1.0 最新版...
- 手机点餐系统 电脑服务器,手机点餐系统_手机点餐软件大全【最新】-太平洋电脑网...
- 记录 uni-app 中对 data 的修改视图未更新的坑
- 高等数学下册学习笔记(二)
- python学习02:利润计算
- mysql 时差查了13小时_MySQL查询检查如何获取时差
- 波老师(teacher/1S/64M)
热门文章
- IOCP模型C++入门级服务端搭建
- 【2020天梯赛】L1-6 吃火锅 (15分)
- Vue3实现pc端商城购物车Demo
- spring4.1.8初始化源码学习三部曲之三:AbstractApplicationContext.refresh方法
- Spring4 多种定时器详解
- 2022年辽宁省保安员考试练习题及答案
- 夸克(神马)搜索引擎网址
- 嵌入式裸机之LCD学习笔记
- 基础计算机技能,计算机基础技能测试题
- UniDAC 8.1.2 Delphi 10.3.3-SEO狼术