S905X环境搭建
基于VM搭建,后期补上裸跑Ubuntu的过程。
Step1:
在VM里创建不低于350G,8G的虚拟机。安装Ubuntu14.04.VM不建议自己分区,裸跑可以自己分区。
裸跑的分区如下:
/ 一般在30G以上
swap 2G左右
boot 300M左右
tmp 5G左右
/home/ 尽可能的大。
opt则是挂载固态硬盘,用来放代码。
裸跑固定IP地址:
vim /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.2.57
netmask 255.255.255.0
gateway 192.168.2.1
/etc/NetworkManager/NetworkManager.conf文档中的managed参数,使之为true
在
/etc/init.d/lightdm stop
./*.run注意在xshell下使用,直接在桌面使用,会有问题
Step2:
VMtools安装。裸跑不需此步骤
手动挂载镜像。
tar -xzvf VMwareTools-9.6.1-1378637.tar.gz -C ~
./vmware-install.pl
root login 个人建议不要做root登录,个人强迫症例外,以后风险很大。
sudo passwd root 输入即可。
然后更改/etc/lightdm/lightdm.conf -> 12.04
/usr/share/lightdm/lightdm.conf.d/ 50-ubuntu.conf -> 14.04以上
greeter-show-manual-login=true #手工输入登陆系统的用户名和密码
allow-guest=false #不允许guest登录
在~/.profile 中修改位 tty –s && mesg n
samba
mkdir -p /home/smb-share
chmod 777 /home/smb-share
ufw disable
apt-get install samba
apt-get install smbfs
apt-get install system-config-samba
/etc.samba/smb.conf加入
[smb-share]
comment = MTK-eelink
path = /home/smb-share
writeable = yes
guest ok = yes
create mask = 0777
如果遇到连接不上,可以查看/var/log/samba下的log信息。
Error :Bad talloc magic value - access after free
sudo apt-get install libtalloc2 重新安装 talloc 后解决
xshell
apt-get update
apt-get install openssh-server
apt-get install openssh-client
修改sshd_config文件如下:
PermitRootLogin empty-password yes
PasswordAuthentication no修改为yes 这里是git使用时不在用密码。
可以使用Xshell远程登录了。
android 编译搭建
JDK安装
add-apt-repository ppa:openjdk-r/ppa
apt-get update
apt-get install openjdk-8-jdk
apt-get install openjdk-8-jre
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/java-8-openjdk-amd64/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/java-8-openjdk-amd64/bin/javac" 1
sudo update-alternatives --config java
sudo update-alternatives --config javac
第三方库:
第三方库必须安装:如下。
apt-get install bison
apt-get install gperf
apt-get install curl
apt-get install flex
apt-get install libncurses5-dev
apt-get install xsltproc
apt-get install libxml2-utils
apt-get install lzma
apt-get install phablet-tools
Toolchain
u-boot
apt-get install lzop
build-essential
libc6-i386
lib32stdc++6
zlib1g:i386
mkdir -p /opt/toolchains
下载aarch64-none-elf 并解压。http://odroid.com/dokuwiki/doku.php?id=en:c2_building_u-boot#toolchain
xz –d XX.tar.xz
tar –xvf XX.tar –C /opt/toolchain
在/ect/profile中加入
export PATH=/opt/toolchains/gcc-linaro-aarch64-none-elf-4.9-2014.09_linux/bin/:$PATH
kernel:
tar -Jxvf gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux.tar.xz -C /opt/toolchains/
export PATH=/opt/toolchains/gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux/bin/:$PATH
repo MarshWallow fail network
repo init -u https://github.com/hardkernel/android.git -b s905_6.0.1_master
repo sync
repo start s905_6.0.1_master –all
Compile
cat Android7_xml20170804_OTT.tar.gz.a* > ./Android7_xml20170804_OTT.tar.gz
source ./build/envsetup.sh
lunch + eng 的版本
make -jN otapackage
U-boot compile:
首先修改uboot下的Makefile文件,这里要吐槽下,这里真心不好。
export CROSS_COMPILE=/opt/toolchain/gcc-linaro-aarch64-none-elf-4.9-2014.09_linux/bin/aarch64-none-elf-
这个真心没搞懂,为什么还需这个呢?
apt-get install gcc-arm-none-eabi
./mk gxl_p212_v1
Kernel compile:
source device/amlogic/p212/mkern.sh
编译 自己写的hardware时,如下:
mmm hardware/amlogic/innopro_gpio
build out/target/product/p212/obj_arm/lib/innopro_gpio.amlogic.so.toc
编写自己写的aidl时:
mmm frameworks/base/
[100% 312/312] Install: out/target/product/p212/system/framework/framework.jar
编译service时如下:
mmm frameworks/base/services/core
build out/target/product/p212/.../services.core_intermediates/classes.jack
mmm frameworks/base/services
build out/target/product/p212/obj_arm/lib/libandroid_servers.so.toc
但是kernel的配置文件在哪里修改?会是这个文件吗?meson64_defconfig
download
1> SD卡,win下使用Burn_Card_Maker
SD卡分为启动SD卡和烧录SD卡,启动SD卡直接
Prepare a TF card and a card reader, the card will be formatted, you might need to back up the data first。
Insert the SD to board,and power it.
Let the board into the upgrade mode.
Vim board is :
Long press Power key without release
Short press Reset key and release
Count 2-3 seconds and release the Power key to enter into upgrade mode.
2> Ubuntu下使用方式:
git clone https://github.com/friendlyarm/sd-fuse_amlogic.git
./fusing.sh /dev/sdx
3> Fastboot apt-get install android-tools-fastboot
1>板子启动后通过串口快速按任意键进入uboot命令行模式,输入命令fastboot
2>在Linux下执行如下操作:
cd out/target/product/nanopi-k2
fastboot usb
sudo fastboot flash boot boot.img
sudo fastboot flash cache cache.img
sudo fastboot flash userdata userdata.img
sudo fastboot flash system system.img
sudo fastboot reboot
4> USB下载:
amlnf disprotect fbbt
amlnf disprotect key
store scrub y
USB下载时选择aml_upgrade_package.img,然后下载。
VIM板子下载模式。
Long press Power key without release
Short press Reset key and release
Count 2-3 seconds and release the Power key to enter into upgrade mode
SecurtCRT的Log设置
Option->global option->edit default setting->Log Files
ADB连接过程: