一、问题
使用比较旧的pc装Ubuntu22来编译香橙派5Plus的内核,过程中遇到编译器崩溃错误:
internal compiler error: Illegal instruction
二、问题分析
chatgpt给出的解答是:
似乎和编译的机器以及编译器有关,根据它给出的建议更改源码。
以下是我遇到的错误文件。
1、sched下的core文件
更改次幂的计算方式,这种方法应该能够在所有编译器中正常工作,而不会导致非法指令的错误。
还有下面 cpu_uclamp_print 函数:
2、ipv4下的tcp_cdg文件
浮点数改为整数:
3、mali_kbase_pm_metrics.c文件
drivers/gpu/arm/bifrost/backend/gpu/mali_kbase_pm_metrics.c
将科学记数法 1E9
转换为整数常量 1000000000
:
三、总结
编译过程中可能还会遇到类似的问题,都是编译器报错,应该都是和浮点数相关。读者只需要发给chatgpt即可。
以后还是尽量用好一点的宿主机吧,老改源码也是头痛。
标签:文件,Illegal,浮点数,香橙,编译,编译器,报错 From: https://blog.csdn.net/plmm__/article/details/143874327