最近在开发一个视频处理的arm板子,由于板子处理能力有限,所有编译工作都是放在Linux下进行,厂商给提供了SDK,SDK中视频流的生成和保存部分都直接沿用,但是这一部分是用C写成的,导致我想用opencv处理只能通过生成一个库文件,再在那个视频生成保存程序(这个程序为make的最终目标)中进行调用,但是生成库文件后调用出现大量undefined reference to xxx:
一下为报错片段
/usr/local/OpenCV-ARM/lib/libopencv_calib3d.so: undefined reference to `__cxa_get_exception_ptr' /usr/local/OpenCV-ARM/lib/libopencv_contrib.so: undefined reference to `vtable for std::basic_stringstream, std::allocator >' /usr/local/OpenCV-ARM/lib/libopencv_contrib.so: undefined reference to `typeinfo for std::exception' /usr/local/OpenCV-ARM/lib/libopencv_contrib.so: undefined reference to `__cxa_free_exception' /usr/local/OpenCV-ARM/lib/libopencv_flann.so: undefined reference to `std::basic_stringbuf, std::allocator >::str() const' /usr/local/OpenCV-ARM/lib/libopencv_calib3d.so: undefined reference to `std::_List_node_base::hook(std::_List_node_base*)' /usr/local/OpenCV-ARM/lib/libopencv_calib3d.so: undefined reference to `operator new[](unsigned int)' /usr/local/OpenCV-ARM/lib/libopencv_contrib.so: undefined reference to `std::_List_node_base::unhook()' /usr/local/OpenCV-ARM/lib/libopencv_calib3d.so: undefined reference to `__cxa_begin_catch'
希望遇到该问题的高人能够指点一下
extern "C"了么?