tiny4412 编译并烧写系统
編譯 uboot_tiny4412:
cd uboot_tiny4412/
make tiny4412_config
make
sudo cp tools/mkimage /usr/bin/
編譯: linux-3.0.86
cd linux-3.0.86/
cp tiny4412_android_defconfig .config
make zImage
在arch/arm/boot目錄下生成zImage。替換images/Android下的zImage即可。
編譯: android-5.0.2
cd?android-5.0.2
. setenv? ? ? ? ? ? ? ?// "."后面有一個空格,setenv設置Android編譯相關的環境變量。
lunch? 之后輸入: full_tiny4412-eng 對應的數字
make
編譯成功后,生成系統映像文件:?
./gen-img.sh? ? ? ? // 在源代碼根目錄下生成?system.img?ramdisk-u.img?userdata.img
system.img? ? ? ? ??// Android 系統分區映象
ramdisk-u.img? ? ??// Android 根分區映象
userdata.img? ? ? ??// Android Data 分區映象
執行動作:
ubuntu@vm:~/work/android-5.0.2$ . setenv including device/asus/fugu/vendorsetup.sh including device/asus/tilapia/vendorsetup.sh including device/asus/grouper/vendorsetup.sh including device/asus/deb/vendorsetup.sh including device/asus/flo/vendorsetup.sh including device/lge/hammerhead/vendorsetup.sh including device/lge/mako/vendorsetup.sh including device/samsung/manta/vendorsetup.sh including device/generic/mini-emulator-x86/vendorsetup.sh including device/generic/mini-emulator-arm64/vendorsetup.sh including device/generic/mini-emulator-armv7-a-neon/vendorsetup.sh including device/generic/mini-emulator-x86_64/vendorsetup.sh including device/generic/mini-emulator-mips/vendorsetup.sh including device/friendly-arm/tiny4412/vendorsetup.sh including device/moto/shamu/vendorsetup.sh including sdk/bash_completion/adb.bashubuntu12.04下安裝MiniTools
tar -xvf MiniTools-Linux-20150528.tgz
cd?MiniTools-20150528
執行./start.sh?
注:非root用戶,需要先su切換到root用戶,再執行.
制作用于安裝系統的SD卡
本質是:將Tiny4412的Bootloader(Superboot4412.bin)燒寫到SD卡的第一個分區,之后就可用SD卡啟動。
利用Superboot的SD卡脫機燒寫功能,將系統燒寫到eMMC,達到重新安裝系統的目的。
1. 利用 SD-Flasher.exe 對SD卡進行分區,第一個分區為130M用于存放Superboot4412,剩下的空間格式化為FRIENDLYARM分區,用于存放系統文件images。
2. 以管理員運行?SD-Flasher.exe
到此,Superboot4412.bin就被燒錄到SD卡的無格式區中了,以后使用SD-Flasher制作SD卡時,無需再執行Relayout操作了,FAT32分區中的數據會得以保留。Bootloader被寫入SD卡后無法看到,把SD卡插到開發板上,S2開關設置為SDBOOT模式,開機后,串口就有信息輸出。
拷貝image到SD卡中
Android 系統燒寫
拷貝文件到SD卡:
images/Superboot4412.bin? ? ? ? ? ? ? ?// Bootloader
images/FriendlyARM.ini? ? ? ? ? ? ? ? ? ? // 系統燒寫配置文件
images/ramdisk-u.img? ? ? ? ? ? ? ? ? ? ? ?// Android 根分區映象
images/system.img? ? ? ? ? ? ? ? ? ? ? ? ? ?// Android 系統分區映象
images/userdata.img? ? ? ? ? ? ? ? ? ? ? ? ?// Android Data 分區映象
images/userdata-4g.img
images/userdata-8g.img
images/userdata-16g.img
images/zImage? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// Android 內核
cat?images/FriendlyARM.ini?
注意:Superboot4412會自動根據EMMC大小來對EMMC進行更合理的分區,使Android下的DATA分區得到更大的可用空間,即就是加載不同的userdata.image文件來實現。
總結
以上是生活随笔為你收集整理的tiny4412 编译并烧写系统的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt中的TableWidget初始化表头
- 下一篇: linux内核设计与实现 中文第三版 p