We're building a tool right now which includes booting a tiny Linux environment via PXE, and having it perform a number of system configuration operations without loading a larger system. (Formatting disks, creating filesystems, etc.) We've been planning to use BusyBox in this system, as having most of the system tools in one tiny static binary is obviously great in this context.
Problem, though: we've had a requirements change, and need support for creating ext3 (and maybe ext4) filesystems, which BusyBox does not support. Is anyone aware of a similarly self-contained binary tool which can be used for creating these filesystems? It doesn't need to also be BusyBox (I can include a few extra tools), but it can't require a bunch of dynamic libraries.
Compile e2fsprogs with static linking and choose the binaries you need from it. You probably only need mke2fs (which makes all kinda of EXT series file systems - mkfs.ext4 is just a symlink to it.
If you can't get static compiling to work, "ldd mke2fs" will at least show which libearies you need to install.
I executed the following commands to compile
e2fsprogs
pkg statically to target ARM:After a successful compilation, you will find the
mke2fs
binary undermisc/
directory. To make sure you generated the correct binary, check the binary format:Now, I copied this binary as it is to my target platform.
To format a partition with ext4: