Mac的AOSP环境配置——磁盘格式设置

2024-06-12 10:32

本文主要是介绍Mac的AOSP环境配置——磁盘格式设置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Mac的AOSP环境配置——磁盘格式设置


在Mac上运行Android源码,首先需要改变Mac的文件系统,也就是需要设置Mac的磁盘访问类型。

原因

Mac OS 会在一个保留大小写但不区分大小写的文件系统中运行。AOSP环境需要Git的支持,Git并不支持此类文件系统,而且此类文件系统会导致某些Git命令(例如 git status)的行为出现异常。因此,需要我们始终在区分大小写的文件系统中对 AOSP源文件进行操作。

创建区分大小写的磁盘映像

我们可以在Mac OS环境中,创建区分大小写的磁盘映像来实现Git的环境要求。

新建磁盘映像——使用磁盘工具创建
  1. 要创建磁盘映像,请启动磁盘工具,然后选择“新建映像”。

如图:

  1. 磁盘映像设置

完成编译至少需要25GB空间;更大的空间能够更好地满足未来的需求。使用稀疏映像有助于节省空间,而且以后可以随着需求的增加进行扩展。请务必选择“Case sensitive, Journaled”存储卷格式。

在这里插入图片描述

字段介绍:

  • “存储为”:映像所生成的文件名,想删除映像时,删除该文件即可。
  • “位置”:映像生成文件存放位置。
  • “名称”:磁盘映像的名称。
  • “大小”:磁盘映像的大小,一个安卓版本目前能达到100G+的空间,这里设置了300G。
  • “格式”:区分大小写即可,Mac高版本使用“APFS(区分大小写)”。
  • “映像格式:这个建议选择稀疏磁盘映像或者稀疏捆绑磁盘映像,方便以后扩容。

注:Apple官网关于磁盘映像的说明 https://support.apple.com/zh-cn/guide/disk-utility/dskutl11888/mac

新建磁盘映像——shell命令创建

你也可以通过 shell 使用以下命令创建磁盘映像:

hdiutil create -type SPARSE -fs 'Case-sensitive Journaled HFS+' -size 40g ~/android.dmg

这将创建一个 .dmg(也可能是 .dmg.sparseimage)文件,该文件在装载后可用作具有 Android 开发所需格式的存储卷。

如果你以后需要更大的存储卷,还可以使用以下命令来调整稀疏映像的大小:

hdiutil resize -size <new-size-you-want>g ~/android.dmg.sparseimage

小结

  1. Mac上配置AOSP环境,由于Mac的文件系统是不区分大小写的,而git需要区分大小写,所以,我们需要创建一个区分大小写的磁盘映像来存放AOSP相关数据。
  2. 我们可以通过Mac自带的磁盘工具来创建磁盘映像,也可以使用shell命令来创建。
  3. 磁盘映像必须是可区分大小写的,我们可以使用稀疏磁盘映像来方便以后得扩容。

AOSP的源码通过教程链接:AOSP源码同步过程(完整教程)


**PS:更多精彩内容,请查看 --> 《AOSP 专栏》
**PS:更多精彩内容,请查看 --> 《AOSP 专栏》
**PS:更多精彩内容,请查看 --> 《AOSP 专栏》

这篇关于Mac的AOSP环境配置——磁盘格式设置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1053964

相关文章

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

MySQL zip安装包配置教程

《MySQLzip安装包配置教程》这篇文章详细介绍了如何使用zip安装包在Windows11上安装MySQL8.0,包括下载、解压、配置环境变量、初始化数据库、安装服务以及更改密码等步骤,感兴趣的朋... 目录mysql zip安装包配置教程1、下载zip安装包:2、安装2.1 解压zip包到安装目录2.2

前端 CSS 动态设置样式::class、:style 等技巧(推荐)

《前端CSS动态设置样式::class、:style等技巧(推荐)》:本文主要介绍了Vue.js中动态绑定类名和内联样式的两种方法:对象语法和数组语法,通过对象语法,可以根据条件动态切换类名或样式;通过数组语法,可以同时绑定多个类名或样式,此外,还可以结合计算属性来生成复杂的类名或样式对象,详细内容请阅读本文,希望能对你有所帮助...

MySQL 中的服务器配置和状态详解(MySQL Server Configuration and Status)

《MySQL中的服务器配置和状态详解(MySQLServerConfigurationandStatus)》MySQL服务器配置和状态设置包括服务器选项、系统变量和状态变量三个方面,可以通过... 目录mysql 之服务器配置和状态1 MySQL 架构和性能优化1.1 服务器配置和状态1.1.1 服务器选项

MySQL8.0设置redo缓存大小的实现

《MySQL8.0设置redo缓存大小的实现》本文主要在MySQL8.0.30及之后版本中使用innodb_redo_log_capacity参数在线更改redo缓存文件大小,下面就来介绍一下,具有一... mysql 8.0.30及之后版本可以使用innodb_redo_log_capacity参数来更改

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

mybatis和mybatis-plus设置值为null不起作用问题及解决

《mybatis和mybatis-plus设置值为null不起作用问题及解决》Mybatis-Plus的FieldStrategy主要用于控制新增、更新和查询时对空值的处理策略,通过配置不同的策略类型... 目录MyBATis-plusFieldStrategy作用FieldStrategy类型每种策略的作

SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤

《SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤》本文主要介绍了SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤,文中通过示例代码介绍的非常详... 目录 目标 步骤 1:确保 ProxySQL 和 mysql 主从同步已正确配置ProxySQL 的

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re