1. 快速编译lk、kernel、vendor命令

kk:
全编:
	./m v28d_v2.1_72kk_qhd_k31_b1b5 eng
单编内核
	./mk kst72_cwet_kk r k bootimage

零、命令解释:
	make -j8			// 八个线程 - 根据cpu几核几线程
	make pl				// 编译preloader
	make lk				// 编译lk
	make kernel			// 编译kernel
	make bootimage		// 打包boot.img(包含kernel、dts、rootfs、init.**.rc、sepolicy下的te权限文件)
	make snod			// 打包system.img(包含hal,jni,framework)
	make				// 全部打包
	mmma				
	2>&1				// 将2(输出)重定向输出到1(输入)
	
	不跑脚本全编:source build/envsetup.sh ; lunch full_magc6737m_65_n-user; make update-api 2>&1 | tee update-api.log; make -j8 2>&1 | tee system.log
	
一、单独编译lk和kernel
	1. 找到lunch的项目 -->方便lunch知道是什么项目,与版本(eng/user/userdebug)
		vim out/target/product/magc6737m_65_n/previous_build_config.mk
		
	2. copy私有化代码到公共
		./x_kst v618_v1.2_hd_oule_p300_gsm4_w15_f135782040_8gb_1d3
		
	3. android编译环境初始化
		source build/envsetup.sh ;lunch full_magc6737m_65_n-eng
		
	4. 只编译lk ; 只编译kernel,并重定向输出log
		make -j8 lk 2>&1 | tee lk.log ; make -j8 kernel bootimage 2>&1 | tee kernel.log
		
二、单独编译sensor hal层:
	1.编译命令:
		source build/envsetup.sh ; lunch full_magc6737m_65_n-eng; mmma vendor/mediatek/proprietary/hardware/sensor  2>&1 | tee mm.log
		make snod 	// 打包生成新的system.img - 如push则不需要		
	2.编译生成:
		z:alps\out\target\product\magc6737m_65_n\system\vendor\lib64\hw\sensors.mt6737m.so		// N
		z:alps\out\target\product\magc6737m_65_n\system\lib64\hw\sensors.mt6737m.so				// M
	3.push到手机
		adb remount
		adb push PATH /system/vendor/lib64/hw/		// N
		adb push PATH /system/lib64/hw/				// M
		adb shell
		rm -r /data/media/0/mtklog
		reboot
		
三、单独编译camera hal层效果文件:
	1.编译命令:
		source build/envsetup.sh ; lunch full_magc6737m_65_n-eng; mmma vendor/mediatek/proprietary/custom/mt6735/hal  2>&1 | tee mm.log		
	2.编译生成:
		Z:alps\out\target\product\magc6737m_65_c_m0\system\lib\libcameracustom.so
		Z:alps\out\target\product\magc6737m_65_c_m0\system\lib64\libcameracustom.so
	3.push到手机
		adb remount
		adb push PATH /system/lib/
		adb push PATH /system/lib64/
		adb shell
		rm -r /data/media/0/mtklog
		reboot
		
四、单独编译camera hal层插值文件:【实测37无效/80有效】
	1.编译命令:
		source build/envsetup.sh ; lunch full_magc6737m_65_n-eng; make libcam.paramsmgr 2>&1 | tee mm.log		// 37无效/80有效
	2.编译生成:
		Z:alps\out\target\product\magc6737m_65_c_m0\system\lib\libcam.paramsmgr.so
		Z:alps\out\target\product\magc6737m_65_c_m0\system\lib64\libcam.paramsmgr.so
	3.push到手机
		adb remount
		adb push PATH /system/lib/
		adb push PATH /system/lib64/
		adb shell
		rm -r /data/media/0/mtklog
		reboot
		
五、更换/更新modem,之后
	1. 替换modem - 
		alps\vendor\mediatek\proprietary\modem\

	2. 找到并删除out/obj/目录中的modem文件,删除
		find out/target/product/magc6737m_65_n/ -name modem_1_lwg_n.img		// img的名字具体要看modem文件夹
		rm out/target/product/magc6737m_65_n/obj/ETC/modem_1_lwg_n.img_intermediates/modem_1_lwg_n.img
		
	3. 重新编译modem相关,并打包成system.img
		source build/envsetup.sh ; lunch full_magc6737m_65_n-user ; 
		make update-modem;	// 编译modem相关
		make			// 打包成system.img
	




		


你可能感兴趣的:(通用)