Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

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.

share|improve this question

1 Answer 1

up vote 3 down vote accepted

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.

share|improve this answer
will it be possible if I ntfs system ? I need a file system which is compatible with windows also. –  bubble Jan 4 '13 at 9:43
Well, try to mount your ntfs drive, then create a file inside and then execute the following command in your terminal: ln -s /path-to-ntfs-drive/name-of-file /path-to-ntfs-drive/symlink-name. If this works without an error, then I suppose you will be able to run CMake on ntfs drive. If you get an error, then verify that your drive is mounted via ntfs-3g driver (mount will say that type is fuseblk). –  bender Jan 4 '13 at 12:27

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.