imx6q SabreSD board running the fsl-image-gui image built via YOCTO, linux version 3.14.28
I am trying to compile and run the gpu sdk sample apps from:
But I'm running into an error at runtime:
sh: ./01_SimpleTriangle: no such file or directory
I have read online that this error shows up if I'm trying to run a 32 bit program on a 64 bit system or vice versa. But I have previously compiled another program that is also 32bit and it runs fine. Running:
01_SimpleTriangle: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=fab14febc7f25ca6332db5a55828e20a10b6747f, not stripped
Before compiling, I manually modifed the CFLAGS in the makefile to also include all the flags outputted by the $CC environment variable, and using -mfloat-abi=hard instead of =softfp
arm-poky-linux-gnueabi-gcc -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/opt/poky/1.7/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
By doing so I was able to compile the first sample 01_SimpleTriangle. (I did not bother fixing the rest of the makefiles yet so I have removed the other samples from the makefile)
When I copied over the bin folder to my board and tried running it, I get the above error. Can someone shine some light on this?
Thanks in advance.
Check if the binary application calls a dynamic library that is not present in your binary folder, as example:
readelf -a <app-binary> | grep interpreter
this will give you some library name and route: /lib/ld-xxxxx
then just do a dynamic link to your folder app for that library with ln -s <new name> <library>
run your binary file again and it should run.