Skip to content
eerimoqPublic

About

Create embedded Linux systems with a single statically linked executable.

Topics

Resources

Stars

331 stars

Watchers

20 watching

Forks

Latest commit

 

History

297 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Monolinux

Create embedded Linux systems with a single statically linked executable, because smaller is better!

Monolinux is primarily targeting the C programming language.

Features:

Creating a project

A minimal Monolinux project's file tree looks like below. Add needed software packages to the 3pp folder.

my-project/
├── 3pp/
│   ├── arm-linux-musleabi-cross.tgz  - a toolchain (if needed)
│   ├── linux/                        - the linux kernel
│   └── monolinux/                    - this repository as a submodule
├── app/                              - your application
│   ├── main.c
│   └── Makefile
├── LICENSE
├── Makefile
└── setup.sh                          - development environment setup script

Here are more example projects:

Tips and tricks

See man procfs for details of the following commands.

$ cat /proc/devices
$ cat /proc/meminfo
$ cat /proc/modules
$ cat /proc/net/arp
$ cat /proc/net/dev
$ cat /proc/net/protocols
$ cat /proc/net/route
$ cat /proc/uptime
$ cat /proc/version
$ cat /proc/mounts

Disk commands.

$ ls /sys/block
$ mount /dev/sda1 /mnt/disk ext4
$ ls /mnt/disk
$ cat /mnt/disk/README

Configuration.

# DNS.
$ cat /etc/resolv.conf

Device tree.

$ cat /sys/firmware/devicetree/base/...

About

Create embedded Linux systems with a single statically linked executable.

Topics

Resources

Stars

331 stars

Watchers

20 watching

Forks

Releases

Packages

Contributors

Languages