As @nos mentioned in the comments on the question, this can happen if the binary is linked to libc that does not exist on your device.
eg. This is the result that I get when I try to run a binary file that was created with the wrong libc (note that I specify the full path /usr/bin/ldd , because without this, for some reason, I got the same error " not found "which you mark in your question).
root@OpenWrt :~
For me, the problem was that I was creating my package using the wrong toolchain. I assumed that the repo git://git.openwrt.org/openwrt.git was for Chaos Calmer (current release at the time of writing). But, of course, a repo is a branch of development (svn trunk). I needed to use git://git.openwrt.org/15.05/openwrt.git .
You can confirm which libc you are creating by checking the toolchain staging_dir directory name. The libc version is the last component of the name (e.g. toolchain-mips_34kc+dsp_gcc-4.8-linaro_uClibc-0.9.33.2 uses uClibc-0.9.33.2).
Compare this version with the version of libc that is present on your router by checking that /lib/libc.so* refers to your router (run ls -l /lib/libc.so* ). If you need to change the libc version used by your toolchain, then make menuconfig in buildroot OpenWRT and install the libc version in Advanced configuration options (for developers) Toolchain Options C Library implementation . You probably wonโt need to change this setting, but make sure that you are building from the correct source repo for the version installed on your router.
source share