0

When I try to run my app on BeagleBone I get following error:

/home/debian/Desktop/myapp: /lib/arm-linux-gnueabihf/libc.so.6: version GLIBC_2.15' not found (required by /usr/local/qt4.8.2-armhf/lib/libQtCore.so.4)
/home/debian/Desktop/myapp: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.15' not found (required by /usr/local/qt4.8.2-armhf/lib/libQtNetwork.so.4)

How to upgrade GLIBC to version I need, or how to fix these 'not found' errors? How to check if I have GLIBC installed?

is it glibc -v?

dev-masih
  • 4,188
  • 3
  • 33
  • 55
  • 2
    `apt-get update` then `apt-get upgrade` now are you sure even the latest Wheezy glibc version has GLIBC_2.15 symbols ? You can check with `objdump -p /lib*/libc-*.so` maybe fixup the exact path to the file you see. I you can not find `GLIBC_2.15` in there but only older then I guess you need to upgrade the entire distro to something newer than wheezy. – Darryl Miles Nov 09 '15 at 13:54
  • 1
    glibc is ALWAYS installed with Wheezy. The package is https://packages.debian.org/wheezy/libc6 to confirm installation of a package and its current version try `apt-cache show libc6` – Darryl Miles Nov 09 '15 at 14:02

1 Answers1

2

To find the version of your libc, you might run the libc.so shared object (which strangely is also executable... unlike most other shared objects), e.g. on your Raspberry Pi:

/lib/arm-linux-gnueabihf/libc.so.6

To upgrade your libc, the pragmatically realistic way is to upgrade your entire Respberry Pi distribution (since almost every software depend upon the libc).

Perhaps installing Linux on your laptop and cross-compiling Qt5 and the software your want to use on it for the Raspberry Pi might be less painful.

Basile Starynkevitch
  • 223,805
  • 18
  • 296
  • 547
  • I have BeagleBone Black. –  Nov 09 '15 at 14:06
  • @Zola: Congratulations. So what? Do you intend to compile everything on your Raspberry Pi? It would be painful and slow. – Basile Starynkevitch Nov 09 '15 at 14:07
  • I don't want to compile anything on my BBB, just to cross-compile code on my VM and run that executable file on my BBB. –  Nov 09 '15 at 14:09
  • 2
    Debian Wheezy is old. If you want to cross compile new applications, please use Debian 8 Jessie : Has libc6 (glibc) version 2.19, and will have the object `GLIBC_2.15` included in the lib files : https://packages.debian.org/jessie/libc6 – Knud Larsen Nov 09 '15 at 14:39
  • @BasileStarynkevitch what can go wrong if I just upgrade GLIBC version and not the whole distribution, for example with Qt App? –  Nov 10 '15 at 08:36
  • Anything could go wrong, and actually will. GLIBC is the cornerstone base of every software. If you want to upgrade, upgrade your entire distribution. – Basile Starynkevitch Nov 10 '15 at 08:45