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

相关文章

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

Pyserial设置缓冲区大小失败的问题解决

《Pyserial设置缓冲区大小失败的问题解决》本文主要介绍了Pyserial设置缓冲区大小失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录问题描述原因分析解决方案问题描述使用set_buffer_size()设置缓冲区大小后,buf

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

Spring中配置ContextLoaderListener方式

《Spring中配置ContextLoaderListener方式》:本文主要介绍Spring中配置ContextLoaderListener方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录Spring中配置ContextLoaderLishttp://www.chinasem.cntene

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

Python 安装和配置flask, flask_cors的图文教程

《Python安装和配置flask,flask_cors的图文教程》:本文主要介绍Python安装和配置flask,flask_cors的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,... 目录一.python安装:二,配置环境变量,三:检查Python安装和环境变量,四:安装flask和flas

Feign Client超时时间设置不生效的解决方法

《FeignClient超时时间设置不生效的解决方法》这篇文章主要为大家详细介绍了FeignClient超时时间设置不生效的原因与解决方法,具有一定的的参考价值,希望对大家有一定的帮助... 在使用Feign Client时,可以通过两种方式来设置超时时间:1.针对整个Feign Client设置超时时间

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一