I get the error message below after following all instructions and running the "sudo make -j4 install" command. I tried this with both the 3.3.1 and 3.4.1 versions of opencv and ran all prerequisites before compiling. I am running Ubuntu 16.04 LTS on a 64-bit machine. Please provide guidance on how to correct. I'm trying to get opencv setup to work on my See3CAM_CU40 camera.
Building CXX object modules/world/CMakeFiles/opencv_world.dir/__/videoio/src/cap_gphoto2.cpp.o
In file included from /home/username/opencv/modules/core/include/opencv2/core/cvstd.hpp:1038:0,
from /home/username/opencv/modules/core/include/opencv2/core/base.hpp:58,
from /home/username/opencv/modules/core/include/opencv2/core.hpp:54,
from /home/username/opencv/modules/videoio/include/opencv2/videoio.hpp:46,
from /home/username/opencv/modules/videoio/src/precomp.hpp:45,
from /home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:28:
/home/username/opencv/modules/core/include/opencv2/core/ptr.inl.hpp: In instantiation of ‘cv::Ptr cv::makePtr(const A1&) [with T = cv::gphoto2::DigitalCameraCapture; A1 = int]’:
/home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:1200:78: required from here
/home/username/opencv/modules/core/include/opencv2/core/ptr.inl.hpp:307:28: error: invalid new-expression of abstract class type ‘cv::gphoto2::DigitalCameraCapture’
return Ptr(new T(a1));
^
/home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:131:7: note: because the following virtual functions are pure within ‘cv::gphoto2::DigitalCameraCapture’:
class DigitalCameraCapture: public IVideoCapture
^
In file included from /home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:28:0:
/home/username/opencv/modules/videoio/src/precomp.hpp:191:16: note: virtual bool cv::IVideoCapture::getDevices(int&)
virtual bool getDevices(int &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:192:16: note: virtual bool cv::IVideoCapture::getDeviceInfo(int, cv::String&, cv::String&, cv::String&, cv::String&)
virtual bool getDeviceInfo(int , String &, String &, String &, String &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:193:16: note: virtual bool cv::IVideoCapture::getFormats(int&)
virtual bool getFormats(int &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:194:16: note: virtual bool cv::IVideoCapture::getFormatType(int, cv::String&, int&, int&, int&)
virtual bool getFormatType(int , String &, int &, int &, int &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:195:16: note: virtual bool cv::IVideoCapture::getVideoProperty(int, long int&, long int&, long int&, long int&, long int&, long int&, long int&)
virtual bool getVideoProperty(int, long &, long &, long &, long &, long &, long &, long &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:196:16: note: virtual bool cv::IVideoCapture::setVideoProperty(int, long int, long int)
virtual bool setVideoProperty(int, long, long) = 0;
^
In file included from /home/username/opencv/modules/core/include/opencv2/core/cvstd.hpp:1038:0,
from /home/username/opencv/modules/core/include/opencv2/core/base.hpp:58,
from /home/username/opencv/modules/core/include/opencv2/core.hpp:54,
from /home/username/opencv/modules/videoio/include/opencv2/videoio.hpp:46,
from /home/username/opencv/modules/videoio/src/precomp.hpp:45,
from /home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:28:
/home/username/opencv/modules/core/include/opencv2/core/ptr.inl.hpp: In instantiation of ‘cv::Ptr cv::makePtr(const A1&) [with T = cv::gphoto2::DigitalCameraCapture; A1 = cv::String]’:
/home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:1215:83: required from here
/home/username/opencv/modules/core/include/opencv2/core/ptr.inl.hpp:307:28: error: invalid new-expression of abstract class type ‘cv::gphoto2::DigitalCameraCapture’
return Ptr(new T(a1));
^
modules/world/CMakeFiles/opencv_world.dir/build.make:6857: recipe for target 'modules/world/CMakeFiles/opencv_world.dir//videoio/src/cap_gphoto2.cpp.o' failed
make[2]: *** [modules/world/CMakeFiles/opencv_world.dir//videoio/src/cap_gphoto2.cpp.o] Error 1
make[2]: Waiting for unfinished jobs....
CMakeFiles/Makefile2:1304: recipe for target 'modules/world/CMakeFiles/opencv_world.dir/all' failed
make[1]: [modules/world/CMakeFiles/opencv_world.dir/all] Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2
I get the error message below after following all instructions and running the "sudo make -j4 install" command. I tried this with both the 3.3.1 and 3.4.1 versions of opencv and ran all prerequisites before compiling. I am running Ubuntu 16.04 LTS on a 64-bit machine. Please provide guidance on how to correct. I'm trying to get opencv setup to work on my See3CAM_CU40 camera.
Building CXX object modules/world/CMakeFiles/opencv_world.dir/__/videoio/src/cap_gphoto2.cpp.o In file included from /home/username/opencv/modules/core/include/opencv2/core/cvstd.hpp:1038:0, from /home/username/opencv/modules/core/include/opencv2/core/base.hpp:58, from /home/username/opencv/modules/core/include/opencv2/core.hpp:54, from /home/username/opencv/modules/videoio/include/opencv2/videoio.hpp:46, from /home/username/opencv/modules/videoio/src/precomp.hpp:45, from /home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:28: /home/username/opencv/modules/core/include/opencv2/core/ptr.inl.hpp: In instantiation of ‘cv::Ptr cv::makePtr(const A1&) [with T = cv::gphoto2::DigitalCameraCapture; A1 = int]’:
/home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:1200:78: required from here
/home/username/opencv/modules/core/include/opencv2/core/ptr.inl.hpp:307:28: error: invalid new-expression of abstract class type ‘cv::gphoto2::DigitalCameraCapture’
return Ptr(new T(a1));
^
/home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:131:7: note: because the following virtual functions are pure within ‘cv::gphoto2::DigitalCameraCapture’:
class DigitalCameraCapture: public IVideoCapture
^
In file included from /home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:28:0:
/home/username/opencv/modules/videoio/src/precomp.hpp:191:16: note: virtual bool cv::IVideoCapture::getDevices(int&)
virtual bool getDevices(int &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:192:16: note: virtual bool cv::IVideoCapture::getDeviceInfo(int, cv::String&, cv::String&, cv::String&, cv::String&)
virtual bool getDeviceInfo(int , String &, String &, String &, String &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:193:16: note: virtual bool cv::IVideoCapture::getFormats(int&)
virtual bool getFormats(int &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:194:16: note: virtual bool cv::IVideoCapture::getFormatType(int, cv::String&, int&, int&, int&)
virtual bool getFormatType(int , String &, int &, int &, int &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:195:16: note: virtual bool cv::IVideoCapture::getVideoProperty(int, long int&, long int&, long int&, long int&, long int&, long int&, long int&)
virtual bool getVideoProperty(int, long &, long &, long &, long &, long &, long &, long &) = 0;
^
/home/username/opencv/modules/videoio/src/precomp.hpp:196:16: note: virtual bool cv::IVideoCapture::setVideoProperty(int, long int, long int)
virtual bool setVideoProperty(int, long, long) = 0;
^
In file included from /home/username/opencv/modules/core/include/opencv2/core/cvstd.hpp:1038:0,
from /home/username/opencv/modules/core/include/opencv2/core/base.hpp:58,
from /home/username/opencv/modules/core/include/opencv2/core.hpp:54,
from /home/username/opencv/modules/videoio/include/opencv2/videoio.hpp:46,
from /home/username/opencv/modules/videoio/src/precomp.hpp:45,
from /home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:28:
/home/username/opencv/modules/core/include/opencv2/core/ptr.inl.hpp: In instantiation of ‘cv::Ptr cv::makePtr(const A1&) [with T = cv::gphoto2::DigitalCameraCapture; A1 = cv::String]’:
/home/username/opencv/modules/videoio/src/cap_gphoto2.cpp:1215:83: required from here
/home/username/opencv/modules/core/include/opencv2/core/ptr.inl.hpp:307:28: error: invalid new-expression of abstract class type ‘cv::gphoto2::DigitalCameraCapture’
return Ptr(new T(a1));
^
modules/world/CMakeFiles/opencv_world.dir/build.make:6857: recipe for target 'modules/world/CMakeFiles/opencv_world.dir//videoio/src/cap_gphoto2.cpp.o' failed
make[2]: *** [modules/world/CMakeFiles/opencv_world.dir//videoio/src/cap_gphoto2.cpp.o] Error 1
make[2]: Waiting for unfinished jobs....
CMakeFiles/Makefile2:1304: recipe for target 'modules/world/CMakeFiles/opencv_world.dir/all' failed
make[1]: [modules/world/CMakeFiles/opencv_world.dir/all] Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2