Window使用CMakeLists编译Opencv
为了方便跨平台移植在Window上写的代码可以无缝移植到Ubuntu上。一、首先需要先安装VisualStudio安装C环境建议安装2019或者2022的版本下载安装链接https://mp.weixin.qq.com/s/5TBz8bHEAY_pMlxKXcOQuA二、安装Opencv链接https://opencv.org/releases/这里我选择4.8.0选择Windows进行下载下载完成后直接安装即可。三、安装Cmake下载地址https://github.com/Kitware/CMake/releases/download/v4.2.5/cmake-4.2.5-windows-x86_64.zip下载完后解压只有这四个文件夹。四、编辑系统环境变量4.1在设置里输入环境点击编辑系统环境变量4.2点击环境变量4.3在系统变量中找到Path双击进去4.4点击新建将刚安装的opencv和cmake的路径添加进去如果后续环境没生效的话可以重启一下电脑五、上述已经完成了编译所需的环境建议下载VisualStudio Code来读写代码无需对该软件设置环境变量。新建一个测试文件夹测试文件夹中新建一个空的build文件夹添加CMakeLists.txt、main.cpp和一张test.jpg使用VS Code打开这个文件夹CMakeLists.txt如下cmake_minimum_required(VERSION 3.10) project(main) # 设置编译器为C14 set(CMAKE_CXX_STANDARD 14) # 查找 OpenCV 包 find_package(OpenCV 4.8.0 REQUIRED) # 包含头文件目录 include_directories(${OpenCV_INCLUDE_DIRS}) INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/include) # 添加可执行文件 add_executable(main main.cpp) # 链接库 target_link_libraries(main ${OpenCV_LIBS} )main.cpp示例代码如下#include opencv2/opencv.hpp #include iostream int main() { cv::Mat image cv::imread(../../test.jpg); if (image.empty()) { std::cout Could not read the image: std::endl; return 1; } cv::imshow(Display window, image); cv::waitKey(0); return 0; }5.1头文件报错这会导致你写代码没有任何错误提示这不是你没有安装好环境只是VS Code编译器没有找到库的路径让编译器找到opencv的库对于Ubuntu同样适用。鼠标放在头文件上点击快速修复5.2点击编辑includePath设置5.3点击c_cpp_properties.json5.4之后会出现.vscode/c_cpp_properties.json使用下述代码替换注意opencv和Visual Studio的路径需要改成你自己的Ctrls保存后回到main.cpp后编写代码就会提示错误和代码补齐了。{ configurations: [ { name: Win32, includePath: [ ${workspaceFolder}/**, D:/Software/Opencv4.8.0/opencv/build/include ], compilerPath: D:/Software/Microsoft Visual Studio/2019/Professional/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe, defines: [ _DEBUG, UNICODE, _UNICODE ] } ], version: 4 }六、代码编译6.1Ctrl~呼出终端在终端输入cd build然后cmake ..6.2 输入进行编译cmake --build . --config Release6.2点击拆分终端在该终端中输入cd .\Release\ 然后.\main.exe运行成功。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2586471.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!