opencv compilando erro ippicv

4

Quando escrevo isto no terminal:

g++ LATCH_match.cpp -std=c++11 $(pkg-config opencv --cflags --libs)

Eu tenho um erro como este:

/usr/bin/ld: cannot find -lippicv
collect2: error: ld returned 1 exit status

Eu tentei muitas coisas, mas não consegui encontrar uma solução.

    
por M. Soylu 13.01.2016 / 09:50

3 respostas

2

Se você verificou que a instalação foi feita após a compilação, você pode atualizar o pkgconfig para opencv (/usr/local/lib/pkgconfig/opencv.pc) para incluir terceiros. Use abaixo como um guia para atualizá-lo

# Package Information for pkg-config

prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
libdir3rd=${exec_prefix}/share/OpenCV/3rdparty/lib
includedir_old=${prefix}/include/opencv
includedir_new=${prefix}/include

Name: OpenCV
Description: Open Source Computer Vision Library
Version: 3.1.0
Libs: -L${libdir} -L${libdir3rd} -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lippicv -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core -lopencv_ts
Libs.private: -L/usr/lib/x86_64-linux-gnu -lQt5Core -lQt5Gui -lQt5Widgets -lQt5Test -lQt5Concurrent -lQt5OpenGL -lwebp -lpng -lz -ltiff -ljasper -ljpeg -lImath -lIlmImf -lIex -lHalf -lIlmThread -lgstvideo-1.0 -lgstapp-1.0 -lgstbase-1.0 -lgstriff-1.0 -lgstpbutils-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -ldc1394 -lv4l1 -lv4l2 -lavcodec -lavformat -lavutil -lswscale -lavresample -lgphoto2 -lgphoto2_port -lexif -ldl -lm -lpthread -lrt -lGLU -lGL -ltbb -latomic
Cflags: -I${includedir_old} -I${includedir_new}
    
por Damilola 02.06.2016 / 22:32
0

Ok, eu tenho exatamente o mesmo problema. Eu recompilei com -DWITH_IPP=ON , e não há erros de compilação ou erros de instalação. Parece que o instalador colocou libippicv no seguinte caminho:

/usr/local/share/OpenCV/3rdparty/lib/libippicv.a

Mas, em seguida, o arquivo instalado /usr/local/lib/pkgconfig/opencv.pc apenas referencia -lippicv , SEM fornecer o caminho correto. Então eu acho que algo está quebrado.

    
por Zendel 20.02.2016 / 01:06
0

Você pode simplesmente adicionar um link simbólico no diretório / lib para contornar:

cd /lib
sudo ln -s /usr/local/share/OpenCV/3rdparty/lib/libippicv.a libippicv.a

(supondo que sua biblioteca esteja em /usr/local/share/OpenCV/3rdparty/lib )

    
por Steve Liren cheng 18.05.2018 / 02:00