这是一个创建于 1140 天前的主题,其中的信息可能已经有所发展或是发生改变。
昨晚上还是好好的,今天准备重编译时,就出现在 make 一直卡死了。
我把它重启了,甚至断电了再打开,还是卡住了。
我以为是磁盘空间不够了,就清理了磁盘空间,还是卡住了。
我想是不是 build 下的文件有损坏,我又与备份机上的 build 文件夹和 prebuild 文件夹进行了比较,也是一致的。
这个问题,折腾了一上午,还是没找到原因。
进行 ctrl-c 中断编译,看错误感觉象是死锁了:
2:07:22 Got signal: interrupt
12:07:22 Still alive, killing subprocesses...
^C12:07:23 Got signal: interrupt
12:07:23 Still alive, cleaning up...
12:07:23 Timed out exiting...
panic: write to panicWriter
goroutine 1978 [running]:
android/soong/ui/logger.panicWriter.Write(...)
build/soong/ui/logger/logger.go:185
log.(*Logger).Output(0xc0000be3c0, 0x3, 0xc001592080, 0x15, 0x0, 0x0)
prebuilts/go/linux-x86/src/log/log.go:172 +0x1fe
android/soong/ui/logger.(*stdLogger).Output(0xc0000a5ad0, 0x2, 0xc001592080, 0x15, 0x15, 0x7bc2a8)
build/soong/ui/logger/logger.go:223 +0x88
android/soong/ui/logger.(*stdLogger).Panicln(0xc0000a5ad0, 0xc00013e080, 0x1, 0x1)
build/soong/ui/logger/logger.go:318 +0x78
android/soong/ui/build.handleSignals.func1.1(0x7bc260, 0xc0000a5ad0, 0xc00000eca0)
build/soong/ui/build/signal.go:71 +0xa0
created by android/soong/ui/build.handleSignals.func1
build/soong/ui/build/signal.go:68 +0x112
第 1 条附言 2023 年 3 月 7 日 原因找到了,真是服了,是我昨天编译一个模块时,切换到了 ROOT 用户,后来忘记修改权限了,导致切换回来,make 就卡住了
有时遇到这个小问题,真的上头。。。
第 2 条附言 2023 年 3 月 7 日 按理来说比较文件可以看得出来,但 bc 好象只比较内容,没比较文件属性
8 条回复 2023-03-07 16:32:49 +08:00  | | 1 ai277014717 2023 年 3 月 7 日 可能是并发度太高了。有些工程可能不能把并发度设置的很高。 |
 | | 2 westoy 2023 年 3 月 7 日 换个硬盘试试 |
 | | 3 pagxir 2023 年 3 月 7 日 via Android 你这个是 Android 的,编译内存要够,尽量不要用交换分区。 |
 | | 4 calloc 2023 年 3 月 7 日 via iPhone 装上 ccache 试试 |
 | | 5 LXGMAX 2023 年 3 月 7 日 make 线程数小一些 |
 | | 6 zinwalin 2023 年 3 月 7 日 via Android cpu 几核? make -j 填多少 |
 | | 7 zinwalin 2023 年 3 月 7 日 via Android 16 核的 59 |
 | | 8 adoyle 2023 年 3 月 7 日 1 没有头绪时,建议删光重来,或者换个环境重来。 |