首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用OpenCV \未定义的参考构建错误在CLion上安装CMake

使用OpenCV \未定义的参考构建错误在CLion上安装CMake
EN

Stack Overflow用户
提问于 2022-10-17 16:35:40
回答 1查看 65关注 0票数 0

对于一个学校项目,我想在OpenCV上安装CLion。

我下载了windows的OpenCV安装程序,并在我的C:磁盘上提取了OpenCV。我将路径添加到系统环境变量的OpenCV库和bin文件夹中。

这是我的CMakeList.txt文件:

代码语言:javascript
运行
复制
cmake_minimum_required(VERSION 3.23)
project(poumons VERSION 0.1.0)

include(CTest)
enable_testing()

find_package(OpenCV REQUIRED)
include_directories( ${OpenCV_INCLUDE_DIRS} )

add_executable(poumons main.cpp)

target_link_libraries( poumons ${OpenCV_LIBS})

set(CPACK_PROJECT_NAME ${PROJECT_NAME})
set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
include(CPack)

下面是CMake构建的输出:

代码语言:javascript
运行
复制
"C:\Program Files\JetBrains\CLion 2022.2.4\bin\cmake\win\bin\cmake.exe" -DCMAKE_BUILD_TYPE=Debug "-DCMAKE_MAKE_PROGRAM=C:/Program Files/JetBrains/CLion 2022.2.4/bin/ninja/win/ninja.exe" -G Ninja -S C:\Users\axell\CLionProjects\poumons -B C:\Users\axell\CLionProjects\poumons\cmake-build-debug
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Users/axell/CLionProjects/poumons/cmake-build-debug

[Finished]

以下是源文件:

代码语言:javascript
运行
复制
#include <iostream>
#include <opencv2/opencv.hpp>

using namespace cv;

int main() {
    std::cout << "Hello, World!" << std::endl;
    /*Mat image;
    image = imread("./moi.png");
    imshow("fenetre" ,image);
    waitKey(0);*/
    cv::Mat image2;
    return 0;
}

但是,当我构建这个项目时,下面是输出:

代码语言:javascript
运行
复制
====================[ Build | all | Debug ]=====================================
"C:\Program Files\JetBrains\CLion 2022.2.4\bin\cmake\win\bin\cmake.exe" --build C:\Users\axell\CLionProjects\poumons\cmake-build-debug --target all -j 6
[1/1] Linking CXX executable poumons.exe
FAILED: poumons.exe 
cmd.exe /C "cd . && C:\PROGRA~1\JETBRA~1\CLION2~1.4\bin\mingw\bin\G__~1.EXE -g  CMakeFiles/poumons.dir/main.cpp.obj -o poumons.exe -Wl,--out-implib,libpoumons.dll.a -Wl,--major-image-version,0,--minor-image-version,0  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  C:/opencv/build/x64/vc15/lib/opencv_world460d.lib  -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 && cd ."
C:\Program Files\JetBrains\CLion 2022.2.4\bin\mingw\bin/ld.exe: CMakeFiles/poumons.dir/main.cpp.obj:C:/Users/axell/CLionProjects/poumons/main.cpp:12: undefined reference to `cv::Mat::Mat()'
C:\Program Files\JetBrains\CLion 2022.2.4\bin\mingw\bin/ld.exe: CMakeFiles/poumons.dir/main.cpp.obj: in function `main':
C:/Users/axell/CLionProjects/poumons/main.cpp:14: undefined reference to `cv::Mat::~Mat()'
collect2.exe: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

我试着使用Visual代码来查看我的OpenCV是否正确安装,而且它工作得很好,但在CLion上却没有。

我不知道我错过了什么或者做错了什么。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2022-10-19 08:37:13

我也面临着同样的问题。对于解决方案,我已经足够编辑clion构建设置了。在visual studio代码中使用的生成,您应该像下面这样编辑clion设置。在这里输入图像描述

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74100440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档