I'm trying to build some software that uses the C function getrandom()
from the header sys/random.h
. (I'm building an image for OpenWRT 18.06 from source.) However compilation always fails at the point where sys/random.h
is included because it can't find the header (and indeed, it's not in staging_dir/target-mipsel_24kc_musl/usr/include/
).
As far as I can tell this should be available from Linux 3.13 onwards, and 18.06 has 4.14. I see other software in the package repo seems(?) to use sys/random.h
eg. Dropbear (I am not sure about this TBH). The Busybox util getrandom
is available; as is the device node /dev/urandom
which is what getrandom()
uses under the hood.
If the getrandom()
system call is not available I can rewrite the calls, but I'd really like to know if this is actually just due to a missing dependency or configuration option.