我正在尝试创建自定义内核rpm。所以我使用了“make rpm-pkg”。 一切都很顺利,直到遇到这个错误。
..
..
INSTALL sound/usb/line6/snd-usb-toneport.ko
INSTALL sound/usb/line6/snd-usb-variax.ko
INSTALL sound/usb/misc/snd-ua101.ko
INSTALL sound/usb/snd-usb-audio.ko
INSTALL sound/usb/snd-usbmidi-lib.ko
scripts/Makefile.fwinst:43: *** mixed implicit and static pattern rules. Stop.
make[2]: *** [_modinst_post] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.jJi4sq (%install)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.p88MqU (%install)
make[1]: *** [rpm-pkg] Error 1
make: *** [rpm-pkg] Error 2
我知道Makefile声明有问题,但也想知道是否有人遇到过这个问题。
答案 0 :(得分:0)
如果您使用的是make版本3.81或3.82,则可能是已知的make“bug”here。
具体来说,改变一个有意义的东西是在一个列表中指定的一组有意义的目标,这些目标以不兼容的方式发生变化,并且内核已经使用了一组无效的目标。
在GNU Make维护者和一些其他开发人员之间来回修复后,修复程序将致命错误转换为警告(至少是暂时的)。
答案 1 :(得分:0)
我能解决这个问题。显然它是UTS_MACHINE不适合arm64的问题。它应该是aarch64,以便打包脚本正确使用它。还有脚本中的小调整,生成rpm spec文件。 所以'制作'在这种情况下不是问题。