阳光沙滩-课程笔记 阳光沙滩-课程笔记
首页 (opens new window)
VIP (opens new window)
  • 课程笔记

    • 《Android项目喜马拉雅FM》
    • 《Android项目领券联盟》
    • 《AndroidStudio技巧》
    • 《Android自定义控件》
    • 《Android开发基础》
    • 《Android约束布局》
    • 《AOSP安卓开源项目》
    • 《RecyclerView》
  • 《领券联盟Nuxt.js》
  • 《博客系统后台管理系统vue.js》
  • 《博客系统门户Nuxt.js》
  • 《博客系统前后端分离后台》
  • 《博客系统部署》
  • 《摸鱼君后台》
  • 《OTA升级管理系统》
  • 阳光沙滩API (opens new window)
  • 领券联盟API (opens new window)
  • 博客系统API (opens new window)
首页 (opens new window)
VIP (opens new window)
  • 课程笔记

    • 《Android项目喜马拉雅FM》
    • 《Android项目领券联盟》
    • 《AndroidStudio技巧》
    • 《Android自定义控件》
    • 《Android开发基础》
    • 《Android约束布局》
    • 《AOSP安卓开源项目》
    • 《RecyclerView》
  • 《领券联盟Nuxt.js》
  • 《博客系统后台管理系统vue.js》
  • 《博客系统门户Nuxt.js》
  • 《博客系统前后端分离后台》
  • 《博客系统部署》
  • 《摸鱼君后台》
  • 《OTA升级管理系统》
  • 阳光沙滩API (opens new window)
  • 领券联盟API (opens new window)
  • 博客系统API (opens new window)
  • Android开发基础

  • Android项目-喜马拉雅FM

  • Android项目-领券联盟

  • AndroidStudio使用技巧

  • Android-Jetpack

  • ConstraintLayout

  • RecyclerView

  • 自定义控件系列

  • AOSP

    • AOSP课程计划
    • AOSP团队开发模式
    • Android格式化sd卡
    • AOSP-android必备基础知识 Linux Shell
    • AOSP日记,修改分辨率,修改dpi,全屏禁止下拉拖出状态栏
    • Android系统编译说明(AOSP)
    • Android系统编译-AOSP-创建自己公司的产品
    • AOSP-Android系统定制下载系统源码
    • AOSP-Android系统源码目录结构
    • 常见的变量说明
    • 编译Android系统的步骤
      • 安装Samba
      • AOSP-Repo代码管理
      • Android.mk
      • 编译可执行so库和可执行程序
      • AOSP-Androidmk里:=与+=的区别是啥?
      • 创建属于自己的产品
      • iphone12
    • ADB

    • 安卓
    • AOSP
    TrillGates
    2021-10-17
    目录

    编译Android系统的步骤

    # 编译Android系统的步骤

    1. 设置环境
    source build/envsetup.sh
    
    1
    1. 加载编译目标
    lunch
    
    1

    可以直接回车,选择对应的目标号码

    比如说:

    aosp@ubuntu:~/android5.1$ lunch
    
    You're building on Linux
    
    Lunch menu... pick a combo:
         1. aosp_arm-eng
         2. aosp_arm64-eng
         3. aosp_mips-eng
         4. aosp_mips64-eng
         5. aosp_x86-eng
         6. aosp_x86_64-eng
         7. aosp_hammerhead-userdebug
         8. aosp_mako-userdebug
         9. aosp_manta-userdebug
         10. mini_emulator_arm64-userdebug
         11. mini_emulator_x86_64-userdebug
         12. m_e_arm-userdebug
         13. mini_emulator_x86-userdebug
         14. mini_emulator_mips-userdebug
         15. aosp_shamu-userdebug
         16. aosp_flo-userdebug
         17. aosp_tilapia-userdebug
         18. aosp_deb-userdebug
         19. aosp_grouper-userdebug
         20. full_fugu-userdebug
         21. aosp_fugu-userdebug
         22. aosp_flounder-userdebug
    
    Which would you like? [aosp_arm-eng] 5
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    1. make
    make -j16
    
    1

    后面这个任务数,一般是线程数的2倍

    如果不加的话,构建系统会自动选择最适合您系统的并行任务计数。

    # 下载 Jdk1.7.x

    如果没有注册甲骨文的账号,同学们可以通过网盘下载。 我传到网盘上了。 链接:https://pan.baidu.com/s/1PAAfUdkbwRlzbt72upHHlw 提取码:jj5b

    # 解决JDK的版本问题

    把jdk的包拷贝到我们的内部系统里Ubuntu里

    进行解压:

    tar -xvf jdk-7u80-linux-x64.tar.gz
    
    1

    配置环境变量

    视频里的系统的java的地址是:

    /home/aosp/devTools/jdk1.7.0_80/bin
    
    1

    配置环境变量步骤

    • 编辑自己Home目录下的.profile文件

    • 追加以下内容

      export JAVA_HOME=/home/aosp/devTools/jdk1.7.0_80/bin
      export PATH=$PATH:$JAVA_HOME
      
      1
      2
    • 要使配置生效,需要source一下

    # 编译输出log

    make -j16 2>&1 | tee build.log
    
    1

    # 问题:unsupported reloc 43 against global symbol stderr

    修改 build/core/clang/HOST_x86_common.mk

    CLANG_CONFIG_x86_LINUX_HOST_EXTRA_ASFLAGS :=
    --gcc-toolchain=$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG) \
    --sysroot=$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG)/sysroot \
    -B$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG)/x86_64-linux/bin \
    
    1
    2
    3
    4

    加上这一段代码:

    -B$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG)/x86_64-linux/bin
    
    1

    加完以后,保存退出,然后

    make clean 
    
    1

    其实就是把out目录删除了

    编辑 (opens new window)
    常见的变量说明
    安装Samba

    ← 常见的变量说明 安装Samba→

    Theme by Vdoing | Copyright © 2022-2022 sunofbeach.net
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式