Ubuntu – Linking error when trying to compile on a shared drive

cmakecompilingmountopencv

I am trying to compile OpenCV library on a shared drive on my system. I was able to configure and generate makefiles successfully by using these settings, but when i try to compile I get the following error:

Linking CXX shared library ../../lib/libopencv_core.so
CMake Error: cmake_symlink_library: System Error: Operation not permitted
CMake Error: cmake_symlink_library: System Error: Operation not permitted
make[2]: *** [lib/libopencv_core.so.2.4.3] Error 1
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
make: *** [all] Error 2

Please help to resolve.
I think it may be an issue with the mount flags.

Best Answer

This happens, because vfat type filesystems don't support symlinks. Mount flags won't change this situation.

I'm not familiar with CMake, but I suppose you are using some kind of rule in your makefile that is telling CMake to make a symbolic link to lib/libopencv_core.so.2.4.3, which fails.

Related Question