gcc android开发环境,[RK3399][Android7.1]开发环境搭建

最后还是安装了双系统,在Ubuntu16.04下编译的,以下的解决方法依然后效;/(ㄒoㄒ)/~~

######################黄金分割线###########################

Virtual Machine:Vmware 14,

Linux:Ubuntu16.04,

Platform:RK3399

OS:Android7.1

因需要资源比较多,最好在linux系统下进行编译,如果是在Windows下的虚拟机,内存、硬盘空间需要较大。

我这边是在Windows下的虚拟机开发的,下面是我搭建环境过程中遇到的一些问题和解决方法:

SSH公钥的生成

最好不要在sudo、root的情况下进行生成,如果是这样生成的话,通过chmod、chown进行修改权限,达到下图相似的权限。

cf5f0c65a9484ec84b2d4ba0b4e3b211.png

本人是重新搭了环境,所以类似于多人共用一个SSH公钥

通过命令随便生成一个公钥,为了创建 .ssh文件夹;然后将刚刚创建的公钥删除掉,将发送给Rockchip的公钥放到 .ssh文件夹

然后使用key-chain管理秘钥(本步应该不需要)

fcd6e3ec1106c3e837bf5922a8094951.png

加载秘钥 (如果无法repo,那就重启下)$ ssh-add ~/.ssh/xxx

下载和解压SDK

我是直接解压SDK初始压缩包,没有直接从云端repo下

需要先安装一些软件包$ sudo apt update

$ sudo apt install git repo

解压和更新

2de70fbe3d2893434188d3552faee5e8.png

按照上述命令检出源码,最后一步会更新代码库,所以第一步要将秘钥弄好,否则无法进行下一步;

进行uboot、kernel和Android的编译

安装openjdk-8-jdk和配置环境变量

$ sudo apt install openjdk-8-jdk

可以运行工程目录下的javaenv.sh,

$ source javaenv.sh

也可以在/etc/profile下更改、运行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

$ source /etc/profile

安装编译所需要的库(估计很多不需要)$ sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib -y git flex bison gperf build-essential libncurses5-dev:i386 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev libsdl1.2-dev libesd0-dev git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev libgl1-mesa-dev libxml2-utils xsltproc unzip m4 lib32z-dev ccache

内存问题

因为是用虚拟机弄得,资源上没有那么多,会导致一些问题出现,主要是内存问题,如果硬件支持,可以加大虚拟机内存的使用量

修改虚拟机内存容量

找到并打开/prebuilts/sdk/tools/jack-admin

prebuilts 就在解压目录下

例如下面代码处加入-Xmx4g或者-Xmx4096M,这是修改编译时的内存空间,根据你的虚拟机配置内存进行相应的修改,下面两个只需要在其中一处加入就可以了,不需要两处 vim xxx/prebuilts/sdk/tools/jack-admin

JACK_SERVER_VM_ARGUMENTS="${JACK_SERVER_VM_ARGUMENTS:=-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4g}"

JACK_SERVER_COMMAND="java -XX:MaxJavaStackTraceDepth=-1 -Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -Xmx4096M -cp $LAUNCHER_JAR $LAUNCHER_NAME"

:wq(保存)

prebuilts/sdk/tools/jack-admin kill-server

prebuilts/sdk/tools/jack-admin start-server

修改out/host/linux-x86/bin/jack-admin,应该也是一样的,这个是linux的

修改swap,是硬件内存的两倍,以下是找的一些链接,可以进行参考

方法1

方法2

make -j[num],加快编译速度,

虚拟机的话make就好o(╥﹏╥)o

修改虚拟机处理器数量

num与一般是以CPU的核心数目的两倍为宜

make -j4,让make最多允许4个编译命令同时执行

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值