【原创】ubuntu22.04下载编译AOSP 15

news2025/5/24 18:26:26

安装依赖的库,顺便把vim 也安装一下

sudo apt-get install vim
sudo apt-get install  git gnupg flex bison build-essential zip curl zlib1g-dev libc6-dev-i386  x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig

找不到libncurses5,可以使用本机更高版本替代

sudo ln -s /usr/lib/x86_64-linux-gnu/libncurses.so.6.4 /usr/lib/x86_64-linux-gnu/libncurses.so.5
sudo ln -s /usr/lib/x86_64-linux-gnu/libtinfo.so.6.4 /usr/lib/x86_64-linux-gnu/libtinfo.so.5

注意下边的命令下载的不是repo的python代码,而是网站的错误信息html

curl -L https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo

手动在浏览器中输入 https://mirrors.tuna.tsinghua.edu.cn/git/git-repo ,然后保存以下,修改名字为repo

mkdir ~/bin
cp ~/Downloads/git-repo ~/bin/repo
cd ~/bin
chmod +x repo

在 ~/.bashrc 文件尾部增加如下内容

export PATH=~/bin/:$PATH
export REPO_URL='http://mirrors.tuna.tsinghua.edu.cn/git/git-repo'

注意一下,这里的清华源的都是http,而不是https,主要是https下载比较慢,都是源代码,也没啥不安全的。

配置一下git信息
git config --global user.email “you@example.com”
git config --global user.name “Your Name”

repo init -u http://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b master

source build/envsetup.sh

lunch aosp_cf_x86_64_phone-trunk_staging-userdebug

1. 禁用沙箱

export TRUSTY_DISABLE_SANDBOX=1

2. 显式指定库路径(双重保障)

export LD_LIBRARY_PATH= P W D / o u t / s o o n g / h o s t / l i n u x − x 86 / l i b 64 : PWD/out/soong/host/linux-x86/lib64: PWD/out/soong/host/linuxx86/lib64:LD_LIBRARY_PATH

3. 启动构建

make -j8

find ./ -name “index.lock” -exec rm -f {} ;
find ./ -name “index.lock” -exec rm -i {} ;

sudo find ./ -name “index.lock” -exec rm -f {} ;

repo sync -j8 --force-sync --no-clone-bundle

参数说明:
    -j8:多线程加速(根据网络调整)。
    --force-sync:强制覆盖本地文件。
    --no-clone-bundle:绕过 Git 分发包(避免因分发包损坏导致失败)。

repo forall -c ‘git clean -dfx; git reset --hard’

repo sync -c --no-tags -j8

定期校验源码完整性
repo forall -c ‘git fsck --full’

单独同步问题模块
repo sync -j4 device/google/gs-common

清理残留文件
repo forall -c ‘git reset --hard HEAD; git clean -fdx’
rm -rf .repo/project-objects

进入问题项目的目录(如 cd frameworks/base

rm -rf .git/index.lock # 确保锁文件已清除
git clean -dfx # 删除所有未跟踪文件(慎用!先备份)
git reset --hard # 强制重置到远程分支状态
git fetch --all # 重新拉取远程数据
git checkout -f # 强制切换分支(如当前分支)

git clean -dfx; git reset --hard

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2384788.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

服务器网络配置 netplan一个网口配置两个ip(双ip、辅助ip、别名IP别名)

文章目录 问答 问 # This is the network config written by subiquity network:ethernets:enp125s0f0:dhcp4: noaddresses: [192.168.90.180/24]gateway4: 192.168.90.1nameservers:addresses:- 172.0.0.207- 172.0.0.208enp125s0f1:dhcp4: trueenp125s0f2:dhcp4: trueenp125…

响应面法(Response Surface Methodology ,RSM)

响应面法是一种结合统计学和数学建模的实验优化技术,通过有限的实验数据,建立输入变量与输出响应之间的数学模型,找到最优操作条件。 1.RSM定义 RSM通过设计实验、拟合数学模型(如多项式方程)和分析响应曲面&#xff…

Spring Boot 拦截器:解锁5大实用场景

一、Spring Boot中拦截器是什么 在Spring Boot中,拦截器(Interceptor)是一种基于AOP(面向切面编程)思想的组件,用于在请求处理前后插入自定义逻辑,实现权限校验、日志记录、性能监控等非业务功能…

有两个Python脚本都在虚拟环境下运行,怎么打包成一个系统服务,按照顺序启动?

环境: SEMCP searx.webapp python 问题描述: 有两个python脚本都在虚拟环境下运行,怎么打包成一个系统服务,按照顺序启动? 解决方案: 将这两个 Python 脚本打包成有启动顺序的系统服务,最…

Python 脚本执行命令的深度探索:方法、示例与最佳实践

在现代软件开发过程中,Python 脚本常常需要与其他工具和命令进行交互,以实现自动化任务、跨工具数据处理等功能。Python 提供了多种方式来执行外部命令,并获取其输出,重定向到文件,而不是直接在终端中显示。这种能力使…

PotPlayer 4K 本地万能影音播放器

今日分享一款来自吾爱论坛大佬分享的啥都能播的的本地播放器,不管是不管是普通视频、4K超清、蓝光3D,还是冷门格式,它基本都能搞定。而且运行流畅不卡顿,电脑配置低也能靠硬件加速,让你根本停不下来。 自带解码器&…

2025年电工杯A题第一版本Q1-Q4详细思路求解+代码运行

A题 光伏电站发电功率日前预测问题 问题背景 光伏发电是通过半导体材料的光电效应,将太阳能直接转化为电能的技术。光伏电站是由众多光伏发电单元组成的规模化发电设施。 光伏电站的发电功率主要由光伏板表面接收到的太阳辐射总量决定,不同季节太阳光…

基于阿里云DashScope API构建智能对话指南

背景 公司想对接AI智能体,用于客服系统,经过调研和实施,觉得DashScope 符合需求。 阿里云推出的DashScope灵积模型服务为开发者提供了便捷高效的大模型接入方案。本文将详细介绍如何基于DashScope API构建一个功能完善的智能对话系统&#x…

九州未来十三载:开源赋能 智启未来

2012年,九州未来以“开源赋能云边变革”为使命,开启中国开放云边基础架构服务的探索之路。十三载坚守深耕,我们始终以开源为翼,以算力为基,在科技浪潮中砥砺前行,见证并推动着AI时代的算力变革。 坚守初心丨…

2025年AI搜索引擎发展洞察:技术革新与市场变革

引言:AI搜索的崛起与市场格局重塑 2024-2025年,AI搜索市场迎来了前所未有的变革期。随着DeepSeek-R1等先进大语言模型的推出,传统搜索引擎、AI原生搜索平台以及各类内容平台纷纷加速智能化转型,推动搜索技术从基础信息检索向深度…

dify调用Streamable HTTP MCP应用

一、概述 上一篇文章,介绍了使用python开发Streamable HTTP MCP应用,链接:https://www.cnblogs.com/xiao987334176/p/18872195 接下来介绍dify如何调用MCP 二、插件 安装插件 需要安装2个插件,分别是:Agent 策略(支持 …

HCIP实验五

一、实验拓扑图: 二、实验需求分析: 1. PreVal策略:要求确保R4通过R2到达192.168.10.0/24 ,需在R4上针对去往该网段路由配置PreVal策略,为经R2的路径赋予更高优先值,影响本地路由表选路。 2. AS Path策略…

vivado fpga程序固化

一般下载到fpga上的程序在掉电之后就会丢失,如果想要掉电之后程序不丢失,就需要将比特流文件固化到板载的flash上。 以下以我的7a100t开发板为例,介绍程序固化的流程 点击OK就可以下载了。 一个奇怪的问题 有一次我的一个工程固化之后&…

OpenCV CUDA模块图像特征检测与描述------图像中快速检测特征点类cv::cuda::FastFeatureDetector

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::cuda::FastFeatureDetector 是 OpenCV 的 CUDA 加速模块中的一部分,用于在图像中快速检测特征点。FAST(Features fro…

SpringMVC(结合源码浅析工作流程)

SpringMVC 概念 Spring MVC 是基于前端控制器(Front Controller)设计模式的 Web 框架,在 Web 应用中指一个统一的入口,用来接收所有客户端请求,并统一进行分发、处理。在 SpringMVC 中,前端控制器就是 Di…

学习STC51单片机13(芯片为STC89C52RC)

我去,兄弟们我们今天来学习一个牛逼 的硬件,它叫超声波测距模块HC—SR04 硬件:HC—SR04 哎,想当初最想要玩的就是这个模块,科技感十足,那现在就让我们玩玩吧 超声波测距传感器 原理就是说需要给Trig 10u…

Claude 4 系列 Opus 4 与 Sonnet 4正式发布:Claude 4新特性都有哪些?

随着 Claude 4 系列(Opus 4 与 Sonnet 4)的正式发布,Anthropic 把自家大模型从“会聊天”推进到“能当自主代理”──不仅推理更深、上下文更长,还内置代码执行、多模态理解、工具调用等一揽子全新能力;同时&#xff0…

深度“求索”:DeepSeek+Dify构建个人知识库

目录 前言 环境部署 安装Docker 安装Dify 配置Dify 部署知识库 创建应用 前言 在当今数字化信息爆炸的时代,数据隐私和个性化知识管理成为企业和个人关注的焦点。Dify,作为一款备受瞩目的开源 AI 应用开发平台,为用户提供了完整的私有…

基于R语言的空间异质性数据分析技术

在自然和社会科学领域,存在大量与地理或空间相关的数据,这些数据通常具有显著的空间异质性。传统的统计学方法在处理这类数据时往往力不从心。基于R语言的一系列空间异质性数据分析方法,如地理加权回归(GWR)、地理加权…

网络学习-TCP协议(七)

一、TCP协议 TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。 1、三次握手 客户端: 1、先发起连接,发送SYN置1,seqnum12345(随机值)----半连接…