赞
踩
1.配置交叉编译环境 # cd kernel-3.18 or # cp arch/arm/configs/msm_defconfig .config //arm32位配置方式 # make ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- msm_defconfig # make prepare ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- # make scripts ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- 注意: <1>.如果make ARCH=arm命令,系统会去找arch/arm/configs下的msm_defconfig配置文件,并且拷贝到kernel顶层目录生成.config文件。 <2>.如果make ARCH=arm64命令,系统会去找arch/arm64/configs下的msm_defconfig配置文件,并且拷贝到kernel顶层目录生成.config文件。 2.在out目录下copy签名文件 <1>.signing_key.priv(android7.1) signing_key.pem(android9.0) signing_key.x509 out/target/product/msmxxx/obj/kernel/msm-3.18 <2>. sign-file kernel/msm-3.18/scripts 注意:Android9.0的sign-file报错:Unrecognized character \x7F; 使用Android7.0的sign-file即可 3.ko文件签名命令 //Android7.1(老版本) # perl sign_file/sign-file sha512 sign_file/signing_key.priv sign_file/signing_key.x509 print.ko //Android9.0 kernel4.9(新版本) # perl sign_file/sign-file sha512 sign_file/signing_key.pem sign_file/signing_key.x509 print.ko //Android12 kernel4.9 # sign-file sha512 signing_key.pem signing_key.x509 print.ko 注意:sha512是linux系统工具,无需下载. //Android14 kernel4.19(最新) # sign-file sha512 signing_key.pem signing_key.x509 print.ko 注意: <1>.sign-file需在scripts/sign-file.c中编译出来。 <2>.sha512是linux系统工具,无需下载. 老版本和新版本的区别: 老版本私钥:signing_key.priv 新版本私钥:signing_key.pem 4.查看签名 # file print.ko # hexdump -C print.ko | tail 5.运行insmod模块 # adb push print.ko /sdcard # insmod print.ko # rmmod print.o 6.如果需要重新编译boot.img,需要执行以下命令即可 # cd kernel-3.18 # make distclean or # make mrproper # make bootimage 注意:如果不行,把所有img重刷一遍.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。