首页 > 编程语言 >win10系统c++与opencv 依赖环境配置

win10系统c++与opencv 依赖环境配置

时间:2024-08-25 11:57:16浏览次数:9  
标签:lib c++ opencv VS C++ win10 添加 目录

一、VS C++配置opencv库

1、 下载opencv(https://sourceforge.net/projects/opencvlibrary/files/opencv-win/3.3.0/)
2、 在官网下载opencv3.3.0.exe文件然后解压到D盘 D:\opencv
3、 配置系统环境:
①添加环境变量:控制面板-系统-高级系统设置-环境变量-系统变量Path中添加下面路径
D:\opencv\opencv\build\x64\vc14\bin
②修改c++配置:新建win32控制台项目-X64/Release-点击属性管理器-进入属性设置其中,
VC++ 目录:
D:\opencv\build\include添加到包含目录
D:\opencv\build\x64\vc14\lib添加到库目录
链接器的输入目录:
opencv_world330.lib;opencv_world330d.lib添加到附加依赖项中;
(具体lib文件目录D:\opencv\build\x64\vc14\lib\opencv_world330.lib
4、配置过程调试显示找不到opencv_world330.dll问题的解决方案:
D:\opencv\build\x64\vc14\bin\opencv_world330.dll 文件拷贝到C:\Windows\System32目录下即可。

二、VS C++配置Python库

配置具体步骤:
1、打开VS找到资源管理器;
2、右击“python环境”并点击“查看所有python环境”;
3、检查是否安装所需要的第三方库,选择“包”即可查看你己经安装的库;
4、安装其他所需要的库(在此以numpy为例);
pip install --index https://pypi.tuna.tsinghua.edu.cn/simple/ numpy(选择清华大学的镜像)
5、在Cpp程序中引用python.h头文件
VS编译时出现LINK : fatal error LNK1104: cannot open file 'MSVCRTD.lib'类似问题的解决方案:
(1)搜索msvcrt.lib所在的路径
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\lib\x86\msvcrt.lib
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\lib\x64\msvcrt.lib
(2)把lib目录填写到【链接器】-【常规】-【附加库目录】里即可

三、VS C++配置matplotlib画图库

Python版本冲突解决:
问题分析:在VS中安装了python3.6.5,又额外安装了anaconda python3.6.2版本,在vs程序编译通过,但是在运行中出现ValueError: failed to parse CPython sys.version: '3.6.2 |Anaconda, Inc.|错误。
最终解决方案:卸载anaconda python3.6.2版本,只保留一个,然后在vs的属性配置管理中按照教程添加附加目录、附加库和环境变量等(具体需要根据环境分析,只保留一个或者配置环境变量设置默认python使用版本)
配置步骤:
1、下载matplotlibcpp源码:https://github.com/lava/matplotlib-cpp
2、解压缩后,打开contrib目录下的WinBuild.cmd文件,修改文件中4至8行为自己的配置环境;
MSVC_VERSION表示VS的版本,PYTHONHOME为Anaconda或python的安装目录,即前面添加至环境变量的目录,CMAKE_CONFIG为编译版本,以设置Release为例进行编译;
3、打开控制台cmd,切换至对应目录,运行WinBuild.cmd文件即可完成编译;
4、配置环境:新建空项目,在视图->属性管理器(以Release x64为例)中添加如下目录:
VC++目录–>包含目录:添加include目录
VC++目录–>库目录:添加libs目录
链接器–>输入–>附加依赖项:添加python36.lib依赖项

四、VS C++配置Eigen库

1、源码下载:
下载eigen3源码后,进入D:\eigen3
2、环境配置:
首先在控制面板-系统-高级系统设置-环境变量-系统变量Path中添加D:\eigen3
其次在VS新建项目下进入C/C++常规下的附加包含目录和连接器中常规下的附加库目录添加D:\eigen3即可。

所需要的依赖安装和环境都配置完成后,即可正常测试win10系统下的opencv库。

标签:lib,c++,opencv,VS,C++,win10,添加,目录
From: https://blog.csdn.net/weixin_40514381/article/details/141526713

相关文章

  • C/C++语言基础--结构体知识详解(包括:结构体数组、字节对齐、位段等内容)
    本专栏目的更新C/C++的基础语法,包括C++的一些新特性前言C语言地结构体是核心内容之一,他运行自定义数据类型,可以将不同地数据类型当作成一个整体,变成一个数据类型,运用及其广泛欢迎点赞+收藏+关注,本人将会持续更新加粗样式文章目录结构体结构体是什么?结构体的申......
  • C++(std::cout 处理 char*)
    目录1.std::cout和char*2.std::cout处理nullptr情况3.数组与指针的区别4.特殊字符的处理5.总结在C++中,std::cout是标准输出流,通常用于将数据输出到控制台。在处理char*类型时,std::cout的行为与处理其他类型有所不同。1.std::cout和char*char*是一个指向字......
  • 突破编程:C++中的组合模式(Composite Pattern)
    突破编程:C++中的组合模式(CompositePattern)在软件设计领域,组合模式(CompositePattern)是一种结构型设计模式,它允许你将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式让客户端代码可以一致地处理单个对象和组合对象,无需关心对象的具体类型,从而简化了客户端代码......
  • 突破编程:C++中的组合模式(Composite Pattern)
    突破编程:C++中的组合模式(CompositePattern)在软件设计领域,组合模式(CompositePattern)是一种结构型设计模式,它允许你将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式让客户端代码可以一致地处理单个对象和组合对象,无需关心对象的具体类型,从而简化了客户端代码......
  • C++竞赛初阶L1-14-第六单元-数组(31~33课)543: T456473 年龄与疾病
    题目内容某医院进行一项研究,想知道某项疾病是否与年龄有关。因此对以往的诊断记录进行整理,统计0-18、19-35、36-60、61及以上这四个年龄段的患者人数占总患者人数的比例。输入格式输入共 2 行。第一行包含一个整数 N(0<n≤100),表示总患者人数。第二行包含 N 个......
  • C++面试基础系列-macro_definition宏定义
    系列文章目录文章目录系列文章目录C++面试基础系列-macro_definition宏定义Overview1.宏定义的概念1.1.基本宏定义1.2.带参数的宏1.3.条件编译1.4.宏的展开1.5.宏的副作用1.6.宏与类型1.7.宏的撤销1.8.宏的可见性1.9.避免宏冲突1.10.宏与函数的区别1.11.字......
  • C++容器算法
    容器算法<algorithm>是c++自带的容器算法,提供一系列实用的算法。在谈到容器算法,我们大概率会用到谓词predicate,谓词返回的类型是布尔类型(bool)可以是lambda表达式、函数对象以及其它可调用的对象。查找find()查找元素find接受三个参数,第三个参数是值类型,set、map自带count......
  • 记一次Win10磁盘空间清理 robocopy mklink
    #流程说明通过【robocopy】命令和【mklink】命令联动的方式进行【用户目录】分区迁移;几个注意事项:1.迁移【loki】用户的时候,需要再PE或者非loki用户自身进行操作,比如启用【administrator】2.进行删除用户目录为了保证数据内容已经完全同步,磁盘空间足够的情况下可以先将其重......
  • 必背八股文-C/C++(4)
    头文件的两种包含方式的区别使用<>包含头文件名时,编译器会在系统默认的路径下寻找头文件。这些路径由编译器的环境变量所指定,通常包括标准库文件、系统头文件和其他系统支持的库。使用""包含头文件名时,编译器会先在当前源代码文件所在的目录下查找头文件,如果找不到,再去系统默......
  • 【C++】_string类字符串万字详细解析
     假如没有给你生命,你连失败的机会都没有。你已经得到了最珍贵的,还需要抱怨什么!......