编译安卓系统源码时,执行 source build/envsetup.sh 的目的

在编译安卓系统源码时,执行 source build/envsetup.sh 的目的是设置环境变量和提供一些编译所需的函数和工具。具体来说,这个脚本的作用包括:

  1. 设置环境变量envsetup.sh 脚本会设置一些关键的环境变量,例如 PATHANDROID_BUILD_TOPANDROID_BUILD_TOP 是指向安卓源码根目录的路径,这对于后续编译过程中的路径解析非常重要。
  2. 导入编译函数:这个脚本会定义一些用于编译的实用函数,比如 lunchmake。通过 lunch 函数,你可以选择要编译的目标设备或目标版本;而 make 函数可以启动实际的编译过程。
  3. 配置编译环境envsetup.sh 通常还会执行一些其他必要的配置和准备工作,比如确保你的编译环境符合安卓系统源码编译的要求,以及设置正确的编译选项和路径。

因此,执行 source build/envsetup.sh 是为了确保你的当前 shell 环境中具备编译安卓系统所需的所有设置和函数。这样,当你执行后续的编译命令时,系统才能正确识别和执行这些命令,从而顺利地进行安卓系统源码的编译工作。

通常在执行 source build/envsetup.sh 后,需要运行 lunch 命令来选择要编译的目标设备或目标版本。这是因为 envsetup.sh 脚本虽然设置了编译所需的环境变量和函数,但还没有指定具体要编译的设备或版本。

具体步骤如下:

  1. 执行 source build/envsetup.sh

source build/envsetup.s

这样会加载安卓编译环境所需的设置和函数。

  1. 执行 lunch 选择编译目标

lunch

这个命令会列出可用的编译目标,包括不同的设备和版本。你可以根据提示选择适合你的目标,比如选择要编译的设备型号(如 1aosp_arm-eng 等)。

  1. 确认选择: 选择完毕后,确认你的选择。通常,会有一些额外的提示或确认信息,确保你选择了正确的编译目标。
  2. 开始编译: 选择完目标后,你可以使用 make 命令启动实际的编译过程。例如:

make -j8

这里 -j8 表示并行编译的线程数,可以根据你的机器配置进行调整。

因此,虽然 source build/envsetup.sh 设置了必要的环境,但 lunch 命令是选择编译目标的关键步骤,是确保编译系统正确工作的重要一步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值