mirror of https://github.com/parazyd/arm-sdk.git
134 lines
3.9 KiB
Markdown
134 lines
3.9 KiB
Markdown
arm-sdk
|
|
=======
|
|
|
|
arm-sdk is simple distro build system aimed at embedded ARM devices. It was
|
|
first conceived as a component of the Devuan SDK, but now it aims to
|
|
support multiple Linux distributions.
|
|
|
|
## Requirements
|
|
|
|
arm-sdk is designed to be used interactively from a terminal, as well as
|
|
from shell scripts. It requires the following packages to be installed, as well
|
|
as [libdevuansdk dependencies](https://github.com/dyne/libdevuansdk/blob/master/README.md#requirements):
|
|
|
|
|
|
### Devuan
|
|
|
|
```
|
|
curl git wget qemu-user-static build-essential rsync gcc-arm-none-eabi gcc-multilib lib32z1 u-boot-tools device-tree-compiler lzop dosfstools vboot-utils vboot-kernel-utils libftdi-dev libfdt-dev swig libpython-dev bc bison flex libssl-dev
|
|
```
|
|
|
|
### Gentoo
|
|
```
|
|
net-misc/curl net-misc/wget sys-boot/vboot-utils app-emulation/qemu(static-user) net-misc/rsync sys-libs/zlib dev-embedded/u-boot-tools sys-apps/dtc app-arch/lzop sys-fs/dosfstools sys-devel/flex sys-devel/bison
|
|
```
|
|
|
|
`sudo` permissions are required for the user that is running the build.
|
|
|
|
## Initial setup
|
|
|
|
By executing `init.sh` which is found in the base directory of arm-sdk, it
|
|
will initialize all git submodules and gcc toolchains that are needed for
|
|
arm-sdk to properly function.
|
|
|
|
Do it with:
|
|
|
|
```
|
|
; ./init.sh
|
|
```
|
|
|
|
## Quick start
|
|
|
|
Edit the `config` file to match your crosscompile toolchain. `init.sh` will
|
|
provide you with precompiled ones. Then run zsh. In case you have conflicting
|
|
extensions on your zsh configuration, safest way would be to run a vanilla one,
|
|
using:
|
|
|
|
```
|
|
; zsh -f
|
|
```
|
|
|
|
then step inside the sdk, "source" it:
|
|
|
|
```
|
|
; cd arm-sdk && source sdk
|
|
```
|
|
|
|
Now is the time you choose the device and OS you want to build the image for.
|
|
|
|
### Currently supported distros
|
|
|
|
* `devuan`
|
|
|
|
### Currently supported boards
|
|
|
|
* `beagleboneblack` - BeagleBone Black
|
|
* `chromeacer` - Acer ARM Chromebook
|
|
* `chromeveyron` - Veyron ARM Chromebook (RK3288)
|
|
* `n900` - Nokia N900
|
|
* `n950` - Nokia N950
|
|
* `n9` - Nokia N9
|
|
* `odroidxu` - ODROID-XU
|
|
* `odroidxu4` - ODROID-XU4
|
|
* `ouya` - OUYA gaming console
|
|
* `raspi1` - Raspberry Pi 1 and 0 (armel)
|
|
* `raspi2` - Raspberry Pi 2 and 3
|
|
* `raspi3` - Raspberry Pi 3 (64bit)
|
|
* `raspi4` - Raspberry Pi 4 (64bit)
|
|
* `rock64` - Rock64 (64bit) (EXPERIMENTAL)
|
|
* `sunxi` - Allwinner-based boards
|
|
|
|
```
|
|
; load devuan sunxi
|
|
```
|
|
|
|
Once initialized, you can run the helper command:
|
|
|
|
```
|
|
; build_image_dist
|
|
```
|
|
|
|
The image will automatically be build for you. Once finished, you will be
|
|
able to find it in the `dist/` directory in arm-sdk's root.
|
|
|
|
For more info, see the `doc/` directory.
|
|
|
|
## Support readiness grid
|
|
|
|
Building and testing ASCII 2.1 point release
|
|
|
|
| board name | builds | runs | problems |
|
|
| ---------- | ------ | ---- | -------- |
|
|
| raspi1 | yes | ?? | |
|
|
| raspi2 | yes | ?? | |
|
|
| raspi3 | yes | ?? | |
|
|
| raspi4 | yes | ?? | |
|
|
| sunxi | no | ?? | ?package |
|
|
|
|
## Acknowledgments
|
|
|
|
Devuan's SDK was originally conceived during a period of residency at the
|
|
Schumacher college in Dartington, UK. Greatly inspired by the laborious and
|
|
mindful atmosphere of its wonderful premises.
|
|
|
|
The Devuan SDK is Copyright (c) 2015-2017 by the Dyne.org Foundation
|
|
|
|
Devuan SDK components were designed, and are written and maintained by:
|
|
|
|
- Ivan J. <parazyd@dyne.org>
|
|
- Denis Roio <jaromil@dyne.org>
|
|
- Enzo Nicosia <katolaz@freaknet.org>
|
|
|
|
This source code is free software: you can redistribute it and/or modify it
|
|
under the terms of the GNU General Public License as published by the Free
|
|
Software Foundation, either version 3 of the License, or (at your option)
|
|
any later version.
|
|
|
|
This software is distributed in the hope that it will be useful, but
|
|
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
more details.
|
|
|
|
You should have received a copy of the GNU General Public License along
|
|
with this source code. If not, see <http://www.gnu.org/licenses/>.
|