Sign inSign up

authelia/crossbuild

Sponsored OSS

By authelia

•Updated about 1 month ago

Cross-compilation CI/CD Container

Image
Integration & delivery
Internet of things
Operating systems
2

10K+

authelia/crossbuild repository overview

⁠crossbuild

:earth_africa: multiarch cross compiling environments

This is a multiarch Docker build environment image. You can use this image to produce binaries for multiple architectures.

⁠Supported targets

TripleAliaseslinuxfreebsd
x86_64-linux-gnu, x86_64-linux-musl(default), linux, amd64, x86_64✔
arm-linux-gnueabihf, arm-linux-musleabihfarmhf, armv7, armv7l✔
aarch64-linux-gnu, aarch64-linux-muslarm64, aarch64✔
x86_64-pc-freebsd14freebsd✔

⁠Using crossbuild

⁠x86_64
$ docker run --rm -v $(pwd):/workdir authelia/crossbuild make helloworld
cc helloworld.c -o helloworld
$ file helloworld
helloworld: ELF 64-bit LSB  executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=9cfb3d5b46cba98c5aa99db67398afbebb270cb9, not stripped

Misc: using cc instead of make

$ docker run --rm -v $(pwd):/workdir authelia/crossbuild cc test/helloworld.c
⁠armhf
$ docker run --rm -v $(pwd):/workdir -e CROSS_TRIPLE=arm-linux-gnueabihf authelia/crossbuild make helloworld
⁠arm64
$ docker run --rm -v $(pwd):/workdir -e CROSS_TRIPLE=aarch64-linux-gnu authelia/crossbuild make helloworld
⁠freebsd x86_64
$ docker run -it --rm -v $(pwd):/workdir -e CROSS_TRIPLE=x86_64-pc-freebsd14  authelia/crossbuild make helloworld

⁠Credit

This project is inspired by the cross-compiler⁠ by the venerable Steeve Morin⁠

⁠License

MIT

Tag summary

Content type

Image

Digest

sha256:399a83f4b…

Size

3.8 GB

Last updated

about 1 month ago

docker pull authelia/crossbuild

This week's pulls

Pulls:

12

Last week