2016-03-28 49 views
1

我將openCV捆綁到SDK中,供在Linux中用C++開發的人員使用。我鏈接測試可執行文件我建庫及其給我的錯誤,其中之一是一個巨大的轉儲:將opencv lib添加到自定義庫中,ipp出現錯誤?

/path/to/build/libopencv_core.a(copy.cpp.o): In function `cv::Mat::setTo(cv::_InputArray const&, cv::_InputArray const&)': 
copy.cpp:(.text._ZN2cv3Mat5setToERKNS_11_InputArrayES3_+0x15c1): undefined reference to `ippicviSet_32f_C1MR' 
copy.cpp:(.text._ZN2cv3Mat5setToERKNS_11_InputArrayES3_+0x1700): undefined reference to `ippicviSet_32f_C4MR' 
copy.cpp:(.text._ZN2cv3Mat5setToERKNS_11_InputArrayES3_+0x1743): undefined reference to `ippicviSet_32s_C4MR' 
copy.cpp:(.text._ZN2cv3Mat5setToERKNS_11_InputArrayES3_+0x17a4): undefined reference to `ippicviSet_16s_C4MR' 
copy.cpp:(.text._ZN2cv3Mat5setToERKNS_11_InputArrayES3_+0x1805): undefined reference to `ippicviSet_16u_C4MR' 

這是什麼錯誤引用?我應該建設沒有ipp?我編譯了opencv庫文件-fPIC並獨立運行。實際上,我收到了數千個有一些提及ippicvi的錯誤,這只是一個例子。

+0

你或許應該加上類似'-lippicvi'到你的鏈接器標誌。 –

回答

2

我有同樣的錯誤。您需要將可執行文件鏈接到庫libippicv

這是OpenCV使用的第三方庫,你可以在/usr/local/share/OpenCV/3rdparty/lib/libippicv.a找到它。

您還可以在opencv.pc中找到OpenCV使用的所有依賴關係。例如:

/usr/local/lib/pkgconfig/opencv.pc爲pkg配置

#包裝信息

前綴=在/ usr /本地exec_prefix = $ {PREFIX} LIBDIR = $ {exec_prefix}/lib目錄 includedir_old = $ {PREFIX} /包括/ OpenCV的 includedir_new = $ {PREFIX} /包括

名稱:OpenCV的
說明:開源計算機視覺庫
版本:3.2.0

利布斯:-L $ {exec_prefix}/lib目錄-lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc - lopencv_flann -lopencv_core

Libs.private:-L $ {exec_prefix} /股/ OpenCV的/的3rdParty/lib目錄-llibwebp -lippicv -L/usr/lib目錄/ x86_64的Linux的GNU的-lpng -lz -ltiff -ljasper - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 線性 - lgtk - x11 - 2.0 - lgdk - x11 - 2.0 - - - - - - - - - - - 1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype -lgthread-2.0 -ldc1394 -lavco癸ffmpeg的-lavformat-的ffmpeg -lavutil-的ffmpeg -lswscale-的ffmpeg -lstdC++ -ldl -lm -lpthread -lrt CFLAGS:-I $ {} includedir_old -I $ {} includedir_new

相關問題