RK3399

RK3399,第1张

1、JDK 安装
Android8.1 系统编译依赖于 JAVA 8。编译之前需安装 OpenJDK。
安装命令如下:

sudo apt-get install openjdk-8-jdk

执行如下命令配置环境变量:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

SDK 带有 Open JDK8 的配置脚本,在工程根目录下,命名为 javaenv.sh。
可直接执行以下命令,配置 JDK:

source javaenv.sh

2、SDK编译
执行自动编译脚本:

./build.sh

Android8.1 系统使用 jack-server 作为 java 代码编译器,在编译过程中可能会遇到以下类似的错误:

Jack server already installed in "/home/jiajia/.jack-server"
Communication error with Jack server (1), try 'jack-diagnose' or see Jack
server log
Communication error with Jack server 1. Try 'jack-diagnose'
Communication error with Jack server 1. Try 'jack-diagnose'

这种情况主要是由于 jack-server 本身编译器限制,同一个网络端口号不能多个用户同时使用。
就是在服务器上协同开发过程中,多用户同时编译 Android7.1 时,需要配置各自使用不同的网络端口号。

jack-server 的两个配置文件,决定了它所使用的端口号:

~/.jack-server/config.properties
~/.jack-settings

这两个配置文件需要配置两个端口号,分别为服务端端口号,及客户端端口号,两个配置文件中的端口号要匹配。

jack.server.service.port=8074
jack.server.admin.port=8075

SERVER_PORT_SERVICE=8074
SERVER_PORT_ADMIN=8075

配置步骤如下:

确保两个配置文件存在,并且权限设置为 0600:
sudo chmod 0600 ~/.jack-server/config.properties
sudo chmod 0600 ~/.jack-settings
修改端口号,请更改 service port 及 admin port 为其他端口号,两个配置文件里的端
口号需要匹配。示例如下:
jack.server.service.port=8023
jack.server.admin.port=8024
SERVER_PORT_SERVICE=8023
SERVER_PORT_ADMIN=8024

重新编译 Android,看是否会报错,若依然报错,请尝试更改其他端口号

更改其他端口号最多五次,仍然报错则修改 java.security 文件配置

/etc/java-8-openjdk/security/java.security 

打开此路径的配置文件,找到如下一行内容,并将 “ TLSv1, TLSv1.1, ”删除后保存

修改前: jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA
修改后: jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA

切换到Android编译源码项目目录:prebuilts/sdk/tools ,并运行如下命令:

./jack-admin kill-server 
./jack-admin start-server
重新编译Android SDK
注:如果到此仍不能编译通过,可能需要重装系统了。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/993016.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存