libboost_system.so.1.54.0: cannot open shared object file: No such file or directory (linux64) [WITH WORKAROUND/SOLUTION]
GoogleCodeExporter opened this issue · 7 comments
GoogleCodeExporter commented
What steps will reproduce the problem?
1. Follow SimpleOpenNI installation instructions for Linux
(https://code.google.com/p/simple-openni/wiki/Installation)
2. Run any SimpleOpenNI example sketch.
What is the expected output? What do you see instead?
Expected output: sketch loads library and runs.
Actual output: sketch does not run, giving the following error:
Can't load SimpleOpenNI library (libSimpleOpenNI64.so) :
java.lang.UnsatisfiedLinkError:
/home/dario/sketchbook/libraries/SimpleOpenNI/library/libSimpleOpenNI64.so:
libboost_system.so.1.54.0: cannot open shared object file: No such file or
directory
Verify if you installed SimpleOpenNI correctly.
http://code.google.com/p/simple-openni/wiki/Installation
A library relies on native code that's not available.
Or only works properly when the sketch is run as a 32-bit application.
What version of the product are you using? On what operating system?
SimpleOpenNI 1.96 on Linux Mint 15, 64bit
Please provide any additional information below.
I found a quick workaround with a colleague.
Apparently, the libboost_system.so.1.54.0 is missing from the
../library/linux64/ folder.
For a quick test, we copied a previous version of the file (1.53, the most
recent one I had available on my system) inside the ../library/linux64/ folder,
changing its name in order to match the required 1.54 version file:
cp /usr/lib/libboost_system.so.1.53.0
/home/dario/sketchbook/libraries/SimpleOpenNI/library/linux64/libboost_system.so
.1.54.0
Even if the version is not the right one (1.53 vs 1.54), sketches now seem to
work :)
I noticed that inside the ../library/linux64/ folder there is a
libboost_filesystem.so.1.54.0 file.
If I rename/remove that file, while keeping the added libboost_system.so.1.54.0
file in the folder, the library still works.
Is it possible that libboost_filesystem.so.1.54.0 is included instead of
libboost_system.so.1.54.0?
Original issue reported on code.google.com by dar...@gmail.com
on 11 Oct 2013 at 12:50
GoogleCodeExporter commented
I have this exact problem, on Ubuntu 13.10, after installing the OpenNI device
rules, then installing SimpleOpenNI through Processing 2.0.3's installation
process.
I also tried the workaround somebody suggested in this thread:
https://groups.google.com/forum/#!msg/simple-openni-discuss/P32ylJdsjho/4KplLWBw
P3AJ
Where you rename libboost_filesystem* to libboost_system*, but this gave me a
different error, about an "undefined symbol:
_ZN5boost6system15system_categoryEv". So I don't think that's the solution.
Any other ideas?
Original comment by konklone
on 27 Oct 2013 at 9:39
GoogleCodeExporter commented
For more information -- I tried the other, first workaround in that same link,
which is to install libboost systemwide and then copy (in my case, symlink) the
system lib to the SimpleOpenNI linux64 dir in my sketchbook dir:
ln -s /usr/lib/x86_64-linux-gnu/libboost_system.so.1.53.0
libboost_system.so.1.54.0
And this got me through. Now I just get "what() Cannot open Kinect", which I
suspect is a separate problem.
Original comment by konklone
on 27 Oct 2013 at 10:03
GoogleCodeExporter commented
...and finally, for anyone watching -- I was able to fix the "what() Cannot
open Kinect" error by taking this file:
https://raw.github.com/OpenKinect/libfreenect/master/platform/linux/udev/51-kine
ct.rules
And putting it into "/etc/udev/rules.d/". I had *already* done the Simple
OpenNI extra Linux instructions
(https://code.google.com/p/simple-openni/wiki/Installation#Linux) that copy
557-primesense-usb.rules to the same directory. That wasn't enough.
Original comment by konklone
on 27 Oct 2013 at 10:09
GoogleCodeExporter commented
I can confirm, the fixes were:
1. download and copy the file in
~/sketchbook/libraries/SimpleOpenNI/library/linux64
http://rpmfind.net/linux/rpm2html/search.php?query=libboost_system.so.1.54.0%28%
29%2864bit%29
2. copy the file to /etc/udev
https://raw.github.com/OpenKinect/libfreenect/master/platform/linux/udev/51-kine
ct.rules
After these steps, I tested
- Kinect works OK
- Xtion doesn't work, gives the error:
Can't init SimpleOpenNI, maybe the camera is not connected!
which is probably caused by the OpenNI2 freenect driver:
https://github.com/piedar/OpenNI2-FreenectDriver
If you find it more, please let me know
Thanks
Original comment by Alexandr...@gmail.com
on 4 Nov 2013 at 1:29
GoogleCodeExporter commented
After trying to resolve this issue for 2 days,
installing libboost_system.so.1.54.0 solved the issue on Fedora 18 x64 .
Thanks a lot.
Original comment by dgcoffee...@gmail.com
on 6 Nov 2013 at 9:07
GoogleCodeExporter commented
[deleted comment]
GoogleCodeExporter commented
i solved the problem by downloading the boost library from boost.org.
I extracted the files, run the ./bootstrap.sh and the ./b2 and when the
installing was done i copied from
/boost_1_54_0/bin.v2/libs/system/build/gcc-4.7/release/threading-multi
the libboost_system.so.1.54.0 to the directory
/sketchbook/libraries/SimpleOpenNI/library/linux64
i had already deleted the previous one named libboost_filesystem.so.1.54.0
i hope it works for everyone
Original comment by ds...@hotmail.gr
on 18 Nov 2013 at 10:34