0

I tried to execute a file and I got an error:

./Tracking: error while loading shared libraries: libboost_system.so.1.49.0:
 cannot open shared object file: No such file or directory

1 Answer 1

1

The error you see indicates that one of the programs "shared libraries" (which provide functions that your program needs) is not available.

In this case, the actual shared library that is missing is called libboost_system.so. If we search the apt repositories for something with a similar name, we get the following packages:

$ apt-cache search libboost system
[...]
libboost-system-dev - Operating system (e.g. diagnostics support) library (default version)
libboost-system1.54-dev - Operating system (e.g. diagnostics support) library
libboost-system1.54.0 - Operating system (e.g. diagnostics support) library
libboost1.54-dev - Boost C++ Libraries development files
[...]

So, you should be able to fix this by installing that libboost-system package:

sudo apt-get install libboost-system1.54.0

The actual version number may change, depending on the version of Ubuntu that you're running.

Note that the actual library that your program requested was libboost_system.so.1.49.0, which doesn't match the version available in Ubuntu. So, you may need to get a different build of that program, which uses the Ubuntu version of that library.

You may see further missing library messages after installing that package; if that's the case, repeat the process with the new library name.

3
  • I've changed your answer, because no one should be interested in for your user name.
    – A.B.
    May 18, 2015 at 8:36
  • 1
    OP's program needs the shared library libboost_system.so.1.49.0, which resides in the package libboost-system1.49.0. libboost-system1.54.0 won't do the trick. May 18, 2015 at 10:39
  • @DavidFoerster: good point, I missed that. Updated with that caveat. May 18, 2015 at 14:17

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .