-
-
[原创]从1开始学编译Android内核
-
发表于:
2024-7-14 15:08
3382
-
最近在学安卓内核编译,边从网上搜资料(太多过时内容,搜索引擎不干人事-_-!!)边自己摸索,终于编译通过,在此做个记录。
为什么是从1开始而不是从0呢,是因为您需要自行准备以下几项环境:
- Windows 11
- WSL 2
- Docker
准备完成,我们开始!
打开命令提示符:
硬盘空间要留足20G 20G 20G,重要事情说三遍!然后,复制粘贴如下命令:
1 | mkdir android - kernel && fsutil file setCaseSensitiveInfo android - kernel enable && docker run - it - - name android - kernel - v / e / android - kernel: / root ubuntu: 18.04 / bin / bash
|
注意上面的/e要换成你自己的操作目录,等命令执行完毕后继续输入:
1 | sed - i 's/archive.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' / etc / apt / sources. list && apt update && apt install apt - utils libterm - readkey - perl dialog locales ca - certificates apt - transport - https - y && dpkg - reconfigure locales
|
弹出语言配置界面:
按+
来到[ ] en_US.UTF-8 UTF-8
,然后按Space
选中,按Enter
然后再选中en_US.UTF-8 UTF-8
,最后按Enter
确认。
下面这行命令是消除包安装时warning
提示用的,非强迫症患者可跳过:
1 | rm / etc / dpkg / dpkg.cfg.d / excludes && apt update && dpkg - l | grep ^ii | cut - d ' ' - f3 | xargs apt install - y - - reinstall && apt install - y man && rm - r / var / lib / apt / lists / *
|
然后安装编译必须的包:
1 | apt update && apt install git gpg python build - essential flex bison zip libxml2 - utils xsltproc curl zlib1g - dev libc6 - dev - i386 lib32ncurses5 - dev x11proto - core - dev libx11 - dev libgl1 - mesa - dev g + + - multilib lib32z1 - dev libssl - dev - y
|
配置git
用户信息,自行替换yourusername
youremail
:
1 | git config - - global user.name 'yourusername' && git config - - global user.email 'youremail'
|
然后:
1 | mkdir bin && PATH = ~ / bin :$PATH && curl https: / / mirrors.tuna.tsinghua.edu.cn / git / git - repo > bin / repo && chmod + x bin / repo && export REPO_URL = 'https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/' && repo init - u https: / / mirrors.tuna.tsinghua.edu.cn / git / AOSP / kernel / manifest - b android - 4.19 - stable && repo sync - c - j8
|
等待完成,android-4.19-stable
可自行替换为您需要的版本。
通用版本可从Android common kernels中查阅。
1 | BUILD_CONFIG = common / build.config.gki.x86_64 build / build.sh - j8
|
等待编译完成即可,完工。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!