Josh-Larson / CameraBoardAPI

An API to interface with the Camera Board on the Raspberry Pi.
17 stars 7 forks source link

Error while executing FindContours #15

Closed Nurgak closed 10 years ago

Nurgak commented 10 years ago

I've successfully made your library work and modified it to start implementing my own CV stuff, but your the contour example doesn't work for some reason.

I executed the example program just as instructed in the readme, compilation goes well, no errors whatsoever, but I get this error when I try to launch it with ./FindContours:

./FindContours: error while loading shared libraries: libraspicam.so.0.0: cannot open shared object file: No such file or directory

I have the following files in the example folder: libraspicam.so, libraspicam.so.0.0, libraspicam.so.0.0.1, all of them take 789652 bytes, and also FindContours.cpp and the compiled FindContours file.

I have already defined LD_PRELOAD beforehand.

I've tried some solutions I've found here and there, but no luck so far. Can you give me a push?

I sincerely appreciate the way you've documented this library, that's some quality work one can start building on.

Josh-Larson commented 10 years ago

That's great to hear! I am very glad it was so helpful for you. First, check to make sure you copied the library files (libraspicam.so*) into /usr/local/lib/ and run ldconfig. Then including them at compile time by doing -l raspicam and you should be all set. An addition that would probably be beneficial would be a make install to automatically do that safely. I'll create something to do that and document that appropriately in the README.

Nurgak commented 10 years ago

Thanks that fixed the problem. I simply moved the libraspicam.so* files to /usr/local/lib/ instead of the example folder and now it works, I don't know if the other steps are necessary (ldconfig or make install) as I messed around a bit. Now even after reboot and starting the UV4L driver the compiled file launches without problems.

Essentially the line cp ../build/src/lib* ./ in the README should be sudo cp ../build/src/lib* /usr/local/lib. I also saw that the .0.0 and .0.0.1 files are symbolic links, but copying them makes actual copies.