如何手动将 opencv 与 C++ 链接?

问题描述 投票:0回答:1

我从源代码构建了 opencv,并使用 C++ 编写了基本代码。我想编译它,但不知道我该怎么做。我对此进行了研究并找到了不同的解决方案,例如 pkg-config 和 cmake 或 makefile。但我想了解如何手动编译它。所以我想将 opencv 与 C++ 链接起来。

#include <opencv2/opencv.hpp>

using namespace cv;

int main() {
    Mat image = imread("image.jpg");

    namedWindow("Image", WINDOW_NORMAL);
    imshow("Image", image);

    waitKey(0);

    destroyWindow("Image");

    return 0;
}

我试过

g++ -o program DisplayImage.cpp -I/usr/local/include/opencv4 -L/usr/local/lib -lopencv_core -lopencv_highgui -lopencv_imgproc
命令。但没有成功。我收到这样的错误:

/usr/bin/ld: /tmp/ccAYFp5J.o: in function `main':
DisplayImage.cpp:(.text+0x65): undefined reference to `cv::imread(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)'
collect2: error: ld returned 1 exit status

如何使用 g++ 编译器编译代码以及如何链接 opencv?

c++ linux opencv ubuntu g++
1个回答
0
投票

您也需要链接opencv_imgcodecs

© www.soinside.com 2019 - 2024. All rights reserved.