我的opencv3.1(从源代码构建)在Ubuntu中运行得非常好。但是,在我从anaconda安装了python版本的opencv3.2(conda install-c menpo opencv3=3.2.0)之后,我遇到了以下警告/错误:
/usr/bin/ld: warning: libjpeg.so.9, needed by //home/sss/anaconda3/lib/libtiff.so.5, not found (try using -rpath or -rpath-link)
//home/sss/anaconda3/lib/libtiff.so.5: undefined reference to 'jpeg_finish_decompress@LIBJPEG_9.0'
//home/sss/anaconda3/lib/libtiff.so.5: undefined reference to 'jpeg_set_quality@LIBJPEG_9.0'
...
这是我的cmake文件,我跟踪了一些在线资源。在
cmake_minimum_required(VERSION 2.8)
project( test )
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
find_package( OpenCV REQUIRED )
message(STATUS "OpenCV library status:")
message(STATUS " version: ${OpenCV_VERSION}")
message(STATUS " libraries: ${OpenCV_LIBS}")
message(STATUS " include path: ${OpenCV_INCLUDE_DIRS}")
message(STATUS " library path: ${OpenCV_LIB_DIR}")
include_directories( ${OpenCV_INCLUDE_DIRS} )
add_executable( testcv main.cpp )
target_link_libraries( testcv ${OpenCV_LIBS} )
-- OpenCV library status:
-- version: 3.1.0
-- libraries:
opencv_xphoto;opencv_xobjdetect;opencv_ximgproc;opencv_xfeatures2d;opencv_tracking;opencv_text;opencv_surface_matching;opencv_structured_light;opencv_stereo;opencv_saliency;opencv_rgbd;opencv_reg;opencv_plot;opencv_optflow;opencv_line_descriptor;opencv_hdf;opencv_fuzzy;opencv_face;opencv_dpm;opencv_dnn;opencv_datasets;opencv_ccalib;opencv_bioinspired;opencv_bgsegm;opencv_aruco;opencv_videostab;opencv_videoio;opencv_video;opencv_superres;opencv_stitching;opencv_shape;opencv_photo;opencv_objdetect;opencv_ml;opencv_imgproc;opencv_imgcodecs;opencv_highgui;opencv_flann;opencv_features2d;opencv_core;opencv_calib3d
-- include path: /usr/local/include/opencv;/usr/local/include
-- library path: /usr/local/share/OpenCV/3rdparty/lib
-- Configuring done
-- Generating done
-- Build files have been written to: /home/sss/Project/OpenCV/Test01/build
所有的opencv库都在“/usr/local/lib”中,文件夹“/usr/local/share/opencv/3rdparty/lib”中只有一个文件“libippicv.a”。我尝试添加SET(OpenCV_LIB_DIR“/usr/local/LIB”),编译错误仍然存在。在
我的主.cpp仅包含两条opencv线:
^{pr2}$如果我注释第二行(imread),构建就会成功。在
似乎在水蟒内部安装opencv对系统进行了一些外部更改,但是它们是什么呢?我怎样才能让我的opencv重新开始工作?在
更新
我通过重定向链接找到了一个临时方法:
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu
但之前有什么改变?如何在cmake中正确地完成它?在
更新
它又停止工作了。虽然我可以建立它,但一旦我运行程序,它就一直在问ligjpeg.so.9。在
“加载共享库时出错:libjpeg.so文件.9:无法打开共享对象文件:没有此类文件或目录“
如何解决?在
目前没有回答
相关问题 更多 >
编程相关推荐