Question: error while loading shared libraries: libboost_iostreams.so.1.60.0
0
gravatar for ashaneev07
9 days ago by
ashaneev0710
ashaneev0710 wrote:

Hiii.... Getting error messege like the following on my ubuntu 14.o4 after the installation of softwares.How can i solve this? Need suggestions..thank you.

error while loading shared libraries: libboost_iostreams.so.1.60.0: cannot open shared object file: No such file or directory
software error • 104 views
ADD COMMENTlink modified 9 days ago by Mensur Dlakic210 • written 9 days ago by ashaneev0710

How do you think we can help you if you even don't mention which tool you are using, and how you installed it?

ADD REPLYlink written 9 days ago by WouterDeCoster40k

i've installed augustus via miniconda. But, when im searching for augustus it shows like this

ADD REPLYlink written 9 days ago by ashaneev0710

You could try installing boost as well with conda: https://anaconda.org/anaconda/boost

ADD REPLYlink written 9 days ago by WouterDeCoster40k
0
gravatar for Mensur Dlakic
9 days ago by
Mensur Dlakic210
USA
Mensur Dlakic210 wrote:

As the error says, the program is looking for libboost_iostreams.so.1.60.0 because it has been compiled with that library. Either it can't find libboost_iostreams at all, or it can't find that particular version. A proper way to fix this is to compile from source as in that case your program will be built with a library that is present in your system. That is the best suggestion I can give you.

A hacky way of solving this is to convince the program that you have the library. Type:

locate libboost_iostreams

On my computer this results in:

/usr/lib/x86_64-linux-gnu/libboost_iostreams.a

/usr/lib/x86_64-linux-gnu/libboost_iostreams.so

/usr/lib/x86_64-linux-gnu/libboost_iostreams.so.1.65.1

This means that I have the library, but my version is higher than 1.60. That's usually OK, so go to that directory (cd /usr/lib/x86_64-linux-gnu) and type:

sudo ln -s libboost_iostreams.so.1.65.1 libboost_iostreams.so.1.60.0

Not that you need root (sudo) privilege for this to work. We are creating a symbolic link here from an existing file to a file that your program is looking for. Note that this only has a chance of working if your library version is actually higher than what's needed by the program.

If the locate command above finds nothing, or if your library version is lower than 1.60, on Debian/Ubuntu you can install all required boost libraries:

sudo apt-get install libboost-all-dev

Note again that this is unlikely to install exactly the version 1.60, so you may have to do symbolic linking anyway.

As I said on top, the cleanest solution is to compile from source.

ADD COMMENTlink written 9 days ago by Mensur Dlakic210

Thank you so much for your valuable comments... I've checked with the "locate " command and found that my library version is lower (libboost_iostreams.so.1.54.0) than 1.60. So go for the next step ie, sudo apt-get install libboost-all-dev
but, after running this i got that libboost-all-dev is already the newest version. But the problem with augustus is still existing... again stuckwith this...!!!

ADD REPLYlink modified 9 days ago • written 9 days ago by ashaneev0710

For Ubuntu 14.04 (aka Xenial), boost 1.54 seems to be the latest available version (see here). You could do Ubuntu distribution upgrade which will give you access to higher versions of boost, but that may be a bit too involved given the problem you are trying to solve. A faster option would be to manually install the library version you need by following these instructions. All available versions of boost are listed here for you to choose. I wouldn't necessarily go for the latest boost version as the compiler tools on Ubuntu 14.04 may not be able to handle it.

ADD REPLYlink modified 9 days ago • written 9 days ago by Mensur Dlakic210
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 948 users visited in the last hour