全志 QIHUA-X64 Android7.1源码编译

1. 前期准备

        1.1. 源码包

                #连接文件为单独一个

                cat filename.tar.gz.a* >> filename.tar.gz

                #解压文件

                tar xvf filename.tar.gz

        1.2. liunx系统

                sudo apt-get install gcc

                sudo apt-get install make

                sudo apt-get install m4 #解决:exec of /usr/bin/m4 failed

                sudo apt-get install libxml2-utils #解决:exec of /usr/bin/m4 failed

                sudo apt-get install curl

                sudo apt-get install gawk #解决:awk: line 2: function strtonum never defined

                apt-get install fakeroot #解决:…/scripts/build_rootfs.sh: line 19: fakeroot: command not found

                sudo apt-get install g++-multilib gcc-multilib #解决:lichee/tools/pack/pctools/linux/android/mkbootimg: No such file or directory

                sudo apt-get install libncurses5 #解决:prebuilts/clang/host/linux-x86/clang-2690385/bin/clang++: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

                修改lichee目录下的dtc-lexer.lex.c_shipped,第640行YYLTYPE yylloc; 增加extern。更改为extern YYLTYPE yylloc;  #解决:usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of 'yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here
collect2: error: ld returned 1 exit status

               修改android目录下的Makefile.

export LC_CTYPE=C.UTF-8

                安装JDK(确保java,javac命令都是正常的),

                apt install openjdk-8-jdk-headless
Linux查找Java的安装目录并设置环境变量 | Linux下执行javac未找到命令_red hat linux release 9 无javac 命令-CSDN博客

                修改security/java.security中取消TLSv1, TLSv1.1 禁用(删除TLSv1, TLSv1.1 )

                修改前

20210508 142302屏幕截图.png


修改后:

jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \
    DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
    include jdk.disabled.namedCurves

                python2版本

               which python2

               apt install python2        

               ln -s /usr/bin/python /usr/bin/python2

准备好之后重启电脑

2. 编译过程

        2.1. 内核源码编译

                cd lichee

                ./build.sh

                结果出现下列信息为成功

                un50iw1p1 compile Kernel successful
                INFO: build kernel OK.
                INFO: build rootfs ...
                INFO: skip make rootfs for android
                INFO: build rootfs OK.
                INFO: ----------------------------------------
                INFO: build lichee OK.
                INFO: ----------------------------------------

        2.2. 系统源码编译

                cd android

                source build/envsetup.sh

                lunch

                提示Which would you like? [aosp_arm-eng] 输入22 选择tulip_p1-eng

                #解决:[aosp_arm-eng] 22 /bin/bash: 行 1: python: 未找到命令

$ which python
/usr/bin/which : no python in (/usr/lib64/bin:/usr/lib64/sbin:/usr/lib/bin)

$ which python3
/usr/bin/python3

$ ls -l /usr/bin/python3
lrwxrwxrwx 1 root root 9 11月  2 22:16 /usr/bin/python3 -> python3.8

$ ln -s /usr/bin/python3.8 /usr/bin/python

                extract-bsp

                make

               make报错修改万了以后 make clean,再从  source build/envsetup.sh开始执行命令

                make历时比较久

                 pack

               

  • 15
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值