第一问: armbian是什么? Armbian是轻量级的Debian系统和为ARM开发板专门发行并重新编译的Ubuntu系统. 第二问:  什么场景下会用到armbian系统? 一个带有arm编译器及apt安装工具的arm linux文件系统显得非常的有用. 为快速开发,为快速验证,提供了便利,比如在arm linxu上运行arm docker. 省去了很多交叉编译的工作量在里面. 直接在arm板子上面开发,安装svn工具.     当然armbian也是支持制作带桌面系统的arm linux…
如何定制自已的armbian文件系统. 1)uboot 2)  kernel 3)  rootfs 针对linux 系统开发人员来说,真正有用的只是其armbian文件系统, 将其制作成所需的文件系统格式,如ubifs ext4等,并烧录在存储介质上面,就可以使用armbian文件系统.        当然文件系统的制作,一般会使用loop device来制作. loop device制作,可参考: create rootfs.img using loop device https://www.…
基于learning armbian step(4) 的总结,我们来实践一下,接下来的会把整个构建的log都贴出来: vmuser@vmuser-virtual-machine:~/qemu-arm$ sudo apt-get install qemu-user-static [sudo] password for vmuser: Reading package lists... Done Building dependency tree Reading state information...…
参考:https://docs.armbian.com/Developer-Guide_Build-Preparation/ 通过如下指令进行编译: apt-get -y -qq install gitgit clone --depth 1 https://github.com/armbian/buildcd build./compile.sh 本人选中的是rk3399. 最终最关心的是:uboot kernel rootfs的生成路径: 它们分别在: cache/source/u-boot-r…
从compile.sh开始入手: SRC="$(dirname "$(realpath "${BASH_SOURCE}")")" # fallback for Trusty [[ -z "${SRC}" ]] && SRC="$(pwd)" # check for whitespace in $SRC and exit for safety reasons grep -q ; exit ;…
为了深入学习armbian,前面已经学习了如何手动构建arm ubuntu rootfs. 由于armbian官方的文档比较的匮乏,所以最终还是决定通过其编译的过程来深入地学习. 为了快速度深入地学习armbian 决定通过compile.sh来抓取完整的编译过程,来了解其大体的编译过程. 然后再来阅读其compile.sh脚本. 通过对编译过程的分析, 总结如下: 1) 编译时,需要超级用户权限. 2) 提示是否只编译uboot kernel 或者uboot kernel rootfs. 3)…
在lib/main.sh当中 ) == main.sh ]]; then echo "Please use compile.sh to start the build process" exit - fi # so parent directories won't be group writeable without this # this is used instead of making the chmod in prepare_host() recursive umask # d…
在学习新的框架之前,肯定有一个原型机,通过最普通的指令来实现其功能. 做到这一点之后,所有的东西都不在是秘密,缺的时间进行系统深入的学习. 其实可以自已先来手动构建一个原生的arm 文件系统,基于qemu-user-static debootstrap chroot命令就可以实现 1. 通过qemu-debootstrap可以构建原生的arm 文件系统. 2. 通过qemu-aarch64-static  及chroot, 可以在X86主机上对arm 文件系统进行挂载. 3. 通过apt命令工具…
在上一节的分析当中,我们知道是通过对话框来选择到底编译的是哪块板子,基于什么样的配置. 接下来我们来拿一个实例来分析一下具体的案例,我们会选中如下所示的版本 iotx-3 AM335X 1Gb SoC eMMC相当于BOARD=iotx-3 BOARD_TYPE=conf接下来还是回到lib/main.sh当中 source $SRC/config/boards/${BOARD}.${BOARD_TYPE} LINUXFAMILY="${BOARDFAMILY}" 169行 相当于获取…
Java编程入门知识   知识概要: (1)Java入门基本常识 (2)Java的特性跨平台性 (3)Java的编程环境的搭建 (4)Java的运行机制 (5)第一个Java小程序入门 (1)Java的入门知识: 基础常识 软件开发,     人机交互方式,   常用的DOS命令 如见开发的概念 软件:一系列按照特定顺序的组织的计算机数据和指令的集合. 常见的软件:  QQ MSN  飞信  微信  支付宝.. 系统软件: 应用软件 什么是开发?软件开发就可以简单的理解为制作软件. 知识扩延:人…