1 Star 4 Fork 2

千古八方/AndroidUtils

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
安卓编译.txt 5.72 KB
一键复制 编辑 原始数据 按行查看 历史
ubuntu 18.04 LTS
查看 swap 分区情况:
$ cat /proc/swaps
飞凌提供的虚拟机默认已经配置好 swap 分区,如果您使用其它虚拟机,可通过创建 swap 文件的
方式来增加 swap 分区大小:
$ sudo fallocate -l 4G /swapfile
$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
$ sudo swapon /swapfile
$ sudo vim /etc/fstab
在/etc/fstab 文件最后添加如下内容:/swapfile none swap sw 0 0
预先安装
$ sudo add-apt-repository ppa:openjdk-r/ppa
$ sudo apt-get update
$ sudo apt-get install uuid \
uuid-dev \
zlib1g-dev \
liblz-dev \
liblzo2-2 \
liblzo2-dev \
lzop \
git-core curl \
u-boot-tools \
mtd-utils \
android-tools-fsutils \
openjdk-8-jdk \
device-tree-compiler \
gdisk \
m4 \
libz-dev
$ sudo apt install gcc
$ sudo apt install gcc-multilib
$ sudo apt instal libxml2 libxml2-utils
查看openjdk安装版本:
$ update-java-alternatives -l
修改openjdk版本java-1.8.0-openjdk-amd64
$ sudo update-alternatives --config java
------------------------------------------------------------------------------------
export LC_ALL=C.UTF-8
FAILED: /bin/bash -c "prebuilts/misc/linux-x86/flex/flex-2.5.39 -oout/host/linux-x86/obj/STATIC_LIBRARIES/libaidl-common_intermediates/aidl_language_l.cpp system/tools/aidl/aidl_language_l.ll"
flex-2.5.39: loadlocale.c:130:_nl_intern_locale_data: ?? 'cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' ???
Aborted (core dumped)
-------------------------------------------------------------------------------------
arch/arm64/Makefile:167: recipe for target 'kernel.img' failed
make: *** [kernel.img] Error 127
sudo apt install gcc-multilib
----------------------------------------------------------------------------------------
build/core/ninja.mk:148: recipe for target 'ninja_wrapper' failed
make: *** [ninja_wrapper] Error 1
build-rk3399-all.sh 文件头添加 export LC_ALL=c
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
sudo apt-get install m4
------------------------------------------------------------------------------------------
Out of memory error (version 1.2-rc4 'Carnac' (298900 f95d7bdecfceb327f9d201a1348397ed8a843843 by android-jack-team@google.com)).
GC overhead limit exceeded.
Try increasing heap size with java option '-Xmx<size>'.
Warning: This may have produced partial or corrupted output.
1、修改Jack的配置文件prebuilts/sdk/tools/jack-admin
  这是一个管理Jack的shell脚本,找到start-server函数,直接修改其启动参数,由原来的
JACK_SERVER_COMMAND="java -XX:MaxJavaStackTraceDepth=-1 -Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -cp $LAUNCHER_JAR $LAUNCHER_NAME"
更改为
JACK_SERVER_COMMAND="java -XX:MaxJavaStackTraceDepth=-1 -Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -Xmx4096m -cp $LAUNCHER_JAR $LAUNCHER_NAME"
  此时Jack服务器仍然在后台执行,所以我们需要将其停止,然后重启启动(make会自动启动Jack服务器)才能使得修改后的参数生效。
  我们执行下面的命令此时Jack服务器仍然在后台执行,所以我们需要将其停止,然后重启启动(make会自动启动Jack服务器)才能使得修改后的参数生效。
  我们执行下面的命令:
#先停止服务
./prebuilts/sdk/tools/jack-admin stop-server
#重新开始服务
./prebuilts/sdk/tools/jack-admin start-server
2. 或者 export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4096m"
1920 <- 1280
720
rk3399 kernel通用GPIO驱动控制
内核已经自带了通用GPIO驱动,可以直接在用户空间操作.
路径: /sys/class/gpio
rk3399_mid:/ $ ls /sys/class/gpio
export gpiochip1032 gpiochip1096 unexport
gpiochip1000 gpiochip1064 gpiochip1128
操作GPIO0_A6作为高电平输出有效, 操作步骤:
1. 计算对应的gpio number的值
通过/sys/kernel/debug/gpio查询信息:
rk3399_mid:/ $ cat /sys/kernel/debug/gpio
GPIOs 1000-1031, platform/pinctrl, gpio0:
gpio-1002 ( |3G_power ) out lo
gpio-1004 ( |bt_default_wake_host) in lo
gpio-1005 ( |power ) in hi
gpio-1009 ( |bt_default_reset ) out lo
gpio-1010 ( |reset ) out hi
gpio-1011 ( |pwd_en_3G ) out hi
GPIOs 1032-1063, platform/pinctrl, gpio1:
gpio-1033 ( |led_Test ) in lo
gpio-1034 ( |int-n ) in hi
gpio-1035 ( |vbus-5v ) out hi
gpio-1045 ( |enable ) out lo
gpio-1046 ( |vsel ) out hi
gpio-1049 ( |vsel ) out lo
GPIOs 1064-1095, platform/pinctrl, gpio2:
gpio-1076 ( |camsys_gpio ) out lo
gpio-1083 ( |bt_default_rts ) in hi
gpio-1090 ( |bt_default_wake ) in lo
gpio-1091 ( |camsys_gpio ) out lo
可以看到gpio0是以nubmer为1000开始, 那么GPIO0_A6就是 1000+ 6 = 1006
2. 设置该gpio为输出
rk3399_mid:/ $ cd /sys/class/gpio/
rk3399_mid:/sys/class/gpio $ echo 1006 > export
/system/bin/sh: can't create export: Permission denied
1|rk3399_mid:/sys/class/gpio $ su
rk3399_mid:/sys/class/gpio # echo 1006 > export
rk3399_mid:/sys/class/gpio # ls
export gpiochip1000 gpiochip1064 gpiochip1128
gpio1006 gpiochip1032 gpiochip1096 unexport
rk3399_mid:/sys/class/gpio # cd gpio1006/
rk3399_mid:/sys/class/gpio/gpio1006 # echo out > direction
3. 设置该gpio输出高电平
rk3399_mid:/sys/class/gpio/gpio1006 # echo 1 > value
rk3399_mid:/sys/class/gpio/gpio1006 # cat value
1
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Android
1
https://gitee.com/aityu/AndroidUtils.git
git@gitee.com:aityu/AndroidUtils.git
aityu
AndroidUtils
AndroidUtils
master

搜索帮助