LLLLIIII

LLLLIIII

学生党

LLLLIIII

LLLLIIII

关注TA

学生党

  •  未知
  • 未知
  • 写了7,629字

最近留言

  • 暂时木有找到任何留言呀~

该文章投稿至Nemo社区   搞机  板块 复制链接


LG V40编译 LineageOS 17.1

发布于 2020年12月02 02:33 213浏览 1回复 5,185

---------------------------第五次更新-------202?年--??月--??日??:??------------------------------
v35的twrp rec和基于官10的lineage17.1同时正在制作中,目前暂无lineage18.0的计划,lineage17.1啥时候弄出来不一定。。。有空尽量做!

配置文件源码基于lg v40进行修改,修改好后上传至github

@github

        1.device tree   

        device-sdm845-common 

        2.kernel tree 

        3.vendor tree

        twrp原生解密思路

        judyp-twrp

第一版的计划是先能开机,跑twrp rec,后续看能力进行修复

---------------------------第四次更新-------2020年--12月--28日23:18------------------------------

编译rec教程(先引用,再更新)

1.@github

2.@xda

---------------------------第三次更新-------2020年--12月--15日------------------------------
            
---------------------------第二次更新-------2020年--12月--5日------------------------------
为什么会有这篇文章?
        这是我在学习过程中的记录,怕以后忘记,满大街翻教程,故写下编译过程
系统环境的使用 Ubuntu 18.04.1 LTS

机器参数 联想拯救者y7000p   i5-9300h   4核心8线程 8g内存       300g存储空间
                   机械革命s1 Pro          i5-8265u   4核心8线程 16g内存    300g存储空间


(最后的容量说明:为什么是300? '50 / '+ '8g swap'+'240 /home' , ' 50'+'4'+'240'的分配)


1.接下来就是ubuntu的环境搭建了    

sudo apt-get update

sudo apt-get install curl

repo需要用到python,不然会报错

apt -get install python

apt-get install vim

apt-get install git(Git装完以后 顺便配置Git信息 git config --global user.name "你的用户名"   && git config --global  user.email "你的油箱")

(例如 : git config --global user.name xiaoming      git config --global  user.email 123456789@qq.com )


2.安装安卓编译所需要安装包:

sudo apt-get install bc bison build-essential ccache curl flex g++-multilib gcc-multilib git gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5-dev libsdl1.2-dev libssl-dev libwxgtk3.0-dev libxml2 libxml2-utils lzop pngcrush rsync schedtool squashfs-tools xsltproc zip zlib1g-dev


Ubuntu 16.04 及以上系统, 替换(怎么安装这玩意?请问问百度,多看/装几次就学会了):

libwxgtk2.8-dev → libwxgtk3.0-dev

关于jdk是否要安装,具体看你要编译的版本来定 由于谷歌在最新的安卓9和安卓10的aosp源码中已经自带了jdk了,所以我们不需要去安装jdk,但是你装了也没关系。


3.下载并解压SDK

            sdk中包含fastboot和adb

wget https://dl.google.com/android/repository/platform-tools-latest-linux.zip

            解压:

unzip platform-tools-latest-linux.zip -d ~


 4.下载repo

mkdir ~/bin

PATH=~/bin:$PATH

curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo

chmod a+x ~/bin/repo


~bin 和sdk添加环境变量

gedit ~/.profile

复制--粘贴👇:

# set PATH so it includes user's private bin if it exists

if [ -d "$HOME/bin" ] ; then

PATH="$HOME/bin:$PATH"

fi


# add Android SDK platform tools to path

if [ -d "$HOME/platform-tools" ] ; then

PATH="$HOME/platform-tools:$PATH"

fi

保存--退出

使修改生效 source ~/.profile


5.新建文件夹并进入:mkdir LineageOS && cd LineageOS


初始化LineageOS

repo init --no-clone-bundle -u git://github.com/LineageOS/android.git -b lineage-17.1

or

repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/lineageOS/LineageOS/android.git -blineage-17.1

上述步骤执行完后使用vim进行修改配置文件:

vim  /WORKING_DIRECTORY/.repo/manifests/default.xml   (请参照清华大学镜像站修改)  按下i进行编辑   按下esc退出编辑   按下shift + : 输入wq  然后按下回车  保存退出 然后repo sync 等上一段时间,具体等多久看你网速咯。


6.拉取源码:repo sync    or   

repo sync -c -j$(nproc --all) --force-sync --no-clone-bundle --no-tags


开始构建

  • 接下来分为三种情况:

    1. 1.有官方维护:
      brunch <设备代号> 即可。

    2. 2.无官方维护,但已有非官方源码:

      1. 去将编译需要用的源码(device,kernel,vendor)从 Git 托管代码站 Clone 到相应位置(一般是 <device/kernel/vendor>/设备厂商名/设备代号)。
      2. 使用 brunch <设备代号> 命令开始编译。
    3. 3.无官方维护,且无非官方源码,但是有其他自定义 ROM 的源码:

      1. 去将编译需要用的源码(device,kernel,vendor)从 Git 托管代码站 Clone 到相应位置(一般是 <device/kernel/vendor>/设备厂商名/设备代号)。
      2. 在此基础上作 ify(参考这里)
      3. 使用 brunch <设备代号> 命令开始编译。
      4. -----------------------------------------------------------------------------------------------
      5. 这里由于LG V40不属于Lineage官方维护,所以找到以下源码

        LG V40源码来自xda开发者 SGCMarkus

        git clone https://github.com/SGCMarkus/android_kernel_lge_sdm845.git kernel/lge/sdm845

        git clone https://github.com/SGCMarkus/android_device_lge_judypn.git device/lge/judypn

        git clone https://github.com/SGCMarkus/android_device_lge_sdm845-common.git device/lge/sdm845-common

        git clone https://github.com/SGCMarkus/proprietary_vendor_lge.git vendor/lge


    4. 通用提取vendor配置文件
    5.           给手机赋予root权限               

      adb shell su -c setenforce 0

      cd device/设备厂商名/设备代号

      ./extract-files.sh

    6. croot
    7. source build/envsetup.sh   or   . build/envsetup.sh

    8. breakfast 设备名
  • -----------------------------------------------------------------------------------------------------------
  • 编译完成
    编译完成后,你可以在 out/target/product/<设备代号> 下找到你编译出来的刷机包,刷入即可。


  • 高通内核msm-4.9

    TheMuppets


    ------------------------第一次更新2020年--12月---2日--02:33-------------
    点赞(2)
    点了个评