Re: Cannot run simple binary executable file


Wy kevinthesun <kevinthesunwy@...>
 

Problem solved! It turns out it is the mismatch of ld-linux.so. I referred to this post http://stackoverflow.com/questions/24543474/cross-compiled-gnu-arm-beagleboneblack-from-windows-runtime-error-on-elf, and found my problem was exactly the same: the binary needs /lib/ld-linux.so.3 to run, but that file is missing in the 1.5.1 yocto system on board. Then I copied ld-linux.so.3 file from Yocto toolchain on my pc. Then it works!

Thank you!

2014-10-07 8:21 GMT-07:00 Nicolas Dechesne <nicolas.dechesne@...>:

On Tue, Oct 7, 2014 at 1:07 PM, Wy kevinthesun <kevinthesunwy@...> wrote:
> Hi, I am new to Yocto Project and learning to develop software on Atmel
> SAMA5D3 Xplained board, on which Yocto 1.5.1 is pre-built. I followed the
> instructions and got the 1.6.1 toolchain
>
> poky-eglibc-i686-core-image-sato-armv7a-vfp-neon-toolchain-1.6.1.sh.
>
> I can compile the simple HelloWorld program and binary file is made. Then I
> copied the binary file
>
> into board and tried to run it. However, when I changed to the file located
> directory and type
>
> "./Hello", it returned "sh: ./Hello: No such file or directory". Then I
> tried "sh Hello", it gave
>
> me  "Hello: Hello: cannot execute binary file ". If I type "file Hello", it
> gives "Hello: ELF 32-bit
>  LSB  executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses
> shared libs), for GNU/Linux 2.6.16,
> BuildID[sha1]=9933a2d2ce212099c5f9902a8e612c1423e136da, not stripped". I
> googled and someone
>
> said the problem may be the toolchain. Then I tried 1.3, 1.5.1 toolchain for
> arm, but still same
>
> error. Could you please help me about this problem?


i suspect this is an armv7 soft-float vs hard-float mismatch. Either
your prebuilt OE system is configured with soft-float and the
toolchain you use compiled for hard-float by default, or the other way
around. can you check how you've compile HelloWolrd and check the
other ABI?

Join yocto@lists.yoctoproject.org to automatically receive all group messages.