嵌入式爱好者

查看: 3038|回复: 4

[Linux] docker全编译问题

[复制链接]

1

主题

8

帖子

44

积分

A40i/T3/T507/T527通行证

扫一扫,手机访问本帖
发表于 2022-1-7 10:21:12 | 显示全部楼层 |阅读模式
按照手册进行全编译,出现如下报错:
kernel/power/scenelock_data.h:22:34: error: invalid application of 'sizeof' to incomplete type 'scene_extended_standby_t[] {aka struct scene_extended_standby[]}'
int extended_standby_cnt = sizeof(extended_standby)/sizeof(extended_standby[0]);
                                  ^
kernel/power/scenelock.c: In function 'scenelocks_init':
kernel/power/scenelock.c:352:24: error: invalid application of 'sizeof' to incomplete type 'scene_extended_standby_t[] {aka struct scene_extended_standby[]}'
  for (i = 0; i < sizeof(extended_standby)/sizeof(extended_standby[0]); i++) {
                        ^
scripts/Makefile.build:308: recipe for target 'kernel/power/scenelock.o' failed
make[2]: *** [kernel/power/scenelock.o] Error 1
scripts/Makefile.build:455: recipe for target 'kernel/power' failed
make[1]: *** [kernel/power] Error 2
Makefile:797: recipe for target 'kernel' failed
make: *** [kernel] Error 2
make: *** Waiting for unfinished jobs....
ERROR: build kernel Failed


请问有什么好的解决方法吗?
回复

使用道具 举报

0

主题

1173

帖子

2195

积分

发表于 2022-1-7 13:48:51 | 显示全部楼层
您全编译之前有在源码中打补丁吗,我们开发环境下载的时候是有提供补丁的。另外编译之前,将源码中的out文件夹删掉,否则也会有问题

点评

更换后依旧报一样的错误 已经尝试两次 请问是我有步骤弄错了吗?  详情 回复 发表于 2022-1-7 16:07
点评回复 支持 1 反对 0

使用道具 举报

1

主题

8

帖子

44

积分

A40i/T3/T507/T527通行证

 楼主| 发表于 2022-1-7 16:07:35 | 显示全部楼层
zhichao 发表于 2022-1-7 13:48
您全编译之前有在源码中打补丁吗,我们开发环境下载的时候是有提供补丁的。另外编译之前,将源码中的out文 ...

更换后依旧报一样的错误 已经尝试两次 请问是我有步骤弄错了吗?
点评回复 支持 反对

使用道具 举报

0

主题

1173

帖子

2195

积分

发表于 2022-1-8 13:35:13 | 显示全部楼层
一般是解压源码,打补丁,删除out文件夹,./build.sh config 配置,./build.sh编译,源码解压之前验证一下,看看压缩包md5sum校验有没有问题

点评

按照这个步骤编译报错还是同上,单独编译kernel,会出现这样的报错: drivers/clocksource/sunxi_timer.c: In function 'sunxi_timer_interrupt': drivers/clocksource/sunxi_timer.c:133:5: error: dereferencing  详情 回复 发表于 2022-1-10 18:09
点评回复 支持 反对

使用道具 举报

1

主题

8

帖子

44

积分

A40i/T3/T507/T527通行证

 楼主| 发表于 2022-1-10 18:09:40 | 显示全部楼层
zhichao 发表于 2022-1-8 13:35
一般是解压源码,打补丁,删除out文件夹,./build.sh config 配置,./build.sh编译,源码解压之前验证一下 ...

按照这个步骤编译报错还是同上,单独编译kernel,会出现这样的报错:
drivers/clocksource/sunxi_timer.c: In function 'sunxi_timer_interrupt':
drivers/clocksource/sunxi_timer.c:133:5: error: dereferencing pointer to incomplete type 'struct clock_event_device'
  evt->event_handler(evt);
     ^
drivers/clocksource/sunxi_timer.c: In function 'sunxi_timer_init':
drivers/clocksource/sunxi_timer.c:207:2: error: invalid use of undefined type 'struct clock_event_device'
  sunxi_clockevent.mult = div_sc(rate / prescale,
  ^
drivers/clocksource/sunxi_timer.c:207:26: error: implicit declaration of function 'div_sc' [-Werror=implicit-function-declaration]
  sunxi_clockevent.mult = div_sc(rate / prescale,
                          ^
drivers/clocksource/sunxi_timer.c:209:5: error: invalid use of undefined type 'struct clock_event_device'
     sunxi_clockevent.shift);
     ^
drivers/clocksource/sunxi_timer.c:210:2: error: invalid use of undefined type 'struct clock_event_device'
  sunxi_clockevent.max_delta_ns = clockevent_delta2ns(0x7fffffff,
  ^
drivers/clocksource/sunxi_timer.c:210:34: error: implicit declaration of function 'clockevent_delta2ns' [-Werror=implicit-function-declaration]
  sunxi_clockevent.max_delta_ns = clockevent_delta2ns(0x7fffffff,
                                  ^
drivers/clocksource/sunxi_timer.c:212:2: error: invalid use of undefined type 'struct clock_event_device'
  sunxi_clockevent.min_delta_ns = clockevent_delta2ns(0x10,
  ^
drivers/clocksource/sunxi_timer.c:214:2: error: invalid use of undefined type 'struct clock_event_device'
  sunxi_clockevent.cpumask = cpumask_of(0);
点评回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-5-3 19:10

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表