4

I have a foreign ARM binary I need to run with Qemu. It relies on an ncurses shared library, libncurses.so.5.

I've tried running

qemu-arm   -L /usr/arm-linux-gnueabihf/ ./program

Which complains that it can't find libncurses.so.5. I have the correct ncurses shared lib and added it to /usr/arm-linux-gnueabihf/lib/. The filename is libncurses.so.5 and I have it symlinked to libncurses.so as well but running the program still fails.

program: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

How can I get qemu to use this external shared library?

  • 1
    Run it with QEMU_STRACE=1 and QEMU should print out all the calls the guest program makes, including the ones made by the dynamic linker, so you should be able to find out exactly what filename it tries to open there – Peter Maydell Jul 29 '16 at 16:17
  • Can you provide a minimal example that works on the x86 host and fails on QEMU arm? – Ciro Santilli OurBigBook.com Feb 16 '19 at 14:03

0 Answers0