1.怎么安装repo?
2.总结uboot的码解重要概念,不知道的码解看过来
怎么安装repo?
安装repo(用来更新Android源码)
创建~/bin目录,用来存放repo程序,码解如下:
。码解$ cd ~
。码解$ mkdir bin
并加到环境变量PATH中,码解诗文源码在第2步中已经加入
下载repo脚本并使其可执行:
。码解$ curl /bbs/pub/cupcake。码解tar。码解gz。码解而且解压出来的码解 cupcake下也有。repo文件夹,码解.net源码文件后缀可以通过repo sync来更新cupcake代码:
。码解tar -xvf
cupcake。码解tar。码解gz
repo sync(更新很慢,用了3个小时)
5、编译Android源码,并得到~/project/Android/cupcake/out 目录
进入Android源码目录:
make
这一过程很久(2个多小时)
6、在模拟器上运行编译好Android
Android SDK的emulator程序在Android-sdk-linux_x-1。
0_r2/tools/下,emulator是需要加载一些image的,默认加载Android-sdk-linux_x-1。0_r2/tools/lib/images下的挪车吗源码kernel-qemu(内核) ramdisk。img
system。
img
userdata。img
编译好Android之后,emulator在~/project/Android/cupcake/out/host/linux-x/bin下, ramdisk。img
system。img
userdata。
img则在~/project/Android/cupcake/out/target/product/generic下
cd ~/project/Android/cupcake/out/host/linux-x/bin
增加环境变量
。
vim ~/。bashrc
在。bashrc中新增环境变量,竖版视频源码如下
。#java 程序开发/运行的一些环境变量
。export Android_PRODUCT_OUT=~/project/Android/cupcake2/out/target/product/generic
。
Android_PRODUCT_OUT_BIN=~/project/Android/cupcake2/out/host/linux-x/bin
。export PATH=${ PATH}:${ Android_PRODUCT_OUT_BIN};
最后,同步这些变化:
。
source ~/。bashrc
。emulator -image system。img -data userdata。img -ramdisk ramdisk。帝国素材模板源码img
最后进入Android桌面,就说明成功了。
out/host/linux-x/bin下生成许多有用工具(包括Android SDK/tools的所有工具),因此,可以把eclipse中Android SDK的路径指定到out/host/linux-x/bin进行开发。
总结uboot的重要概念,不知道的看过来
本篇内容不讲解uboot源码,只总结面试中高频问到的重要知识点。内容适用于嵌入式新人了解uboot,对老手有复习和查漏补缺的作用。
1、PC机启动:上电后,BIOS程序初始化DDR内存和硬盘,从硬盘读取OS镜像到DDR,跳转执行OS。
2、嵌入式Linux系统启动:上电后执行uboot,初始化DDR、Flash,将OS从Flash读到DDR,启动OS。
3、uboot定义与作用:uboot属于bootloader,作为单线程裸机程序,主要作用是初始化硬件、内存、flash等,引导内核启动。
4、uboot启动阶段(不同平台差异):MTK平台:boot rom -> preloader -> lk -> kernel;RK平台:bootrom -> spl(miniloader) -> uboot -> trust -> kernel;NXP平台:bootrom -> bl2 -> ATF -> uboot -> kernel。
5、uboot支持多种启动方式:SPI Flash/eMMC/Nvme/SD/Hard Disk/U-Disk/net。启动方式不同,固件存放位置也不同。
6、掌握uboot的关键点:命令和环境变量。uboot启动后大部分工作在shell中完成,命令用于操作,环境变量如bootcmd和bootargs,用于设置启动参数。
7、bootargs参数详解:root用于指定rootfs位置,console用于设置控制台,mem用于指定内核使用内存大小,ramdisk_size用于设置ramdisk大小,initrd用于指定initrd参数,init用于指定启动脚本,mtdparts用于设置分区。
8、常用bootargs组合:文件系统为ramdisk、jffs2类型、nfs等不同情况下的bootargs设置示例。
总结,了解uboot是嵌入式开发的基础,掌握其启动过程和关键参数,对提高开发效率和解决问题有重要作用。
2024-11-29 23:032756人浏览
2024-11-29 22:481578人浏览
2024-11-29 22:171643人浏览
2024-11-29 22:141614人浏览
2024-11-29 21:052980人浏览
2024-11-29 20:452865人浏览
1.为什么木马删除了重开机又会出现?怎样才能完全删除/2.注入挂hook是什么3.Android Activity Deeplink启动来源获取源码分析4.注入专题二:远线程注入CreateRemot
1.微信小程序的文件路径在哪里?2.哪里可以下载免费的微信小程序源码?3.小程序源码,在哪里购买?4.怎么获取小程序的源码5.微信小程序反编译获取源码6.小程序源码怎么用 小程序源码如何用微信小程序的
1.集合竞价通达信指标源码分享集合竞价通达信指标源码分享 短线游资密切关注的集合竞价数据,是主力试盘、测压与承接的重要指标。通过分析活跃度及抢筹情况,投资者可制定相应的操盘策略。然而,仅凭匹配的买