mirror of https://github.com/parazyd/arm-sdk.git
42 lines
3.1 KiB
Markdown
42 lines
3.1 KiB
Markdown
# ARM image builds
|
|
|
|
## Custom toolchains
|
|
**ARMv6**: `https://pub.parazyd.cf/mirror/gcc-arm-eabi-linaro-4.6.2.txz`
|
|
**ARMv7**: `https://pub.parazyd.cf/mirror/gcc-arm-linux-gnueabihf-4.7.txz`
|
|
**ARM64**: `https://pub.parazyd.cf/mirror/gcc-linaro-aarch64-linux-gnu-4.9.txz`
|
|
SHA256sums are available by downloading $filename.sha
|
|
|
|
## qemu-wrapper
|
|
For certain devices, you will want to pass arguments to qemu, such as the cpu
|
|
model. To enable this, you will have to modify and compile qemu-wrapper.c with:
|
|
```
|
|
gcc -static qemu-wraper.c -O2 -s -o qemu-wrapper
|
|
```
|
|
And after it's compiled, uncomment the entry in the settings section of your
|
|
build script.
|
|
|
|
### List of shellcodes for different architectures
|
|
Consult the RaspberryPi2 build script to see how to use these. You will need to
|
|
use the correct one, depending on the architecture you're building.
|
|
```
|
|
print ':aarch64:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\xb7:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-aarch64:' | sudo tee /proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/qemu-wrapper:' | sudo tee /proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':armeb:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-armeb:' | sudo tee /proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':alpha:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x26\x90:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-alpha:' | sudo tee /proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':mips:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-mips:' | sudo tee /proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-mipsel:' | sudo tee /proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':ppc:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x14:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-ppc:' | sudo tee /proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':sh4:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x2a\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff\xff:/usr/bin/qemu-sh4:' | sudo tee/proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':sh4eb:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x2a:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-sh4eb:' | sudo tee/proc/sys/fs/binfmt_misc/register
|
|
|
|
print ':sparc:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-sparc:' | sudo tee /proc/sys/fs/binfmt_misc/register
|
|
```
|