Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)

文章目录

  • 1.VS2019下载
    • 安装opencv
  • 2.编译,运行
    • 添加静态库(编译需要):
    • lib并存的方法
    • 添加动态库(运行需要):
    • 添加环境变量
  • 3.测试代码
  • 4.安装Eigen
  • 5.总结:
  • 6.Vs2019 使用Cmake(推荐)
    • Cmakelists 参考
    • 运行即可
  • 7.建议使用Vcpkg(推荐)

1.VS2019下载

Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第1张图片

安装opencv

下载windows,安装即可
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第2张图片

新建控制台项目,解决方案右键,属性
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第3张图片

添加头文件目录,外部包含目录点击添加(例如:opencv的include目录)
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第4张图片
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第5张图片

2.编译,运行

添加动态库,静态库
什么是动态库与静态库
参考:
https://www.runoob.com/w3cnote/cpp-static-library-and-dynamic-library.html
静态库:程序编译时需要使用
如果缺少静态库,程序会编译失败,提示无法解析的外部符号
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第6张图片

添加静态库(编译需要):

右键解决方案,属性选择当前配置(或者所有配置),所有平台(或者电脑所使用的64位系统,x64)
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第7张图片

添加静态库 .lib 文件目录(以opencv为例:添加opencv\build\x64\vc15\lib)

opencv的动态库与静态库
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第8张图片

Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第9张图片

Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第10张图片

Debug模式添加
opencv_world453d.lib

不要同时添加
opencv_world453.lib
opencv_world453d.lib
否则出错

出现此错误,则说明链接器的输入,同时添加了两条

Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第11张图片

lib并存的方法

每次修改lib显然很麻烦,有时候需要在debug配置与其余配置切换,所以可以同时添加,然后再程序开头指定链接哪个lib
1.删除所有在链接器输入的lib,
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第12张图片

2.在mian.cpp上方添加需要使用的lib
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第13张图片

#pragma comment(lib,"opencv_world453.lib")

添加动态库(运行需要):

动态库:程序运行时需要使用
如果程序运行时,提示缺少dll,则需要将动态库的文件夹路径,加入到环境变量中
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第14张图片

注意:
1.动态库可以直接复制到exe程序下面,不添加环境变量
2.添加dll所在文件夹到环境变量中(也可复制到C:\Windows\System32,本质是添加到环境变量,因为System32在环境变量中)

添加环境变量

win + Q 搜索环境变量

Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第15张图片
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第16张图片

opencv的动态库与静态库
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第17张图片
如果添加了环境变量后,电脑需要重启,环境变量才会生效

如果重启后发现还是找不到dll,出现这种情况建议直接 拷贝到C:\Windows\System32

3.测试代码

#include 
#include 

#pragma comment(lib,"opencv_world453d.lib")//链接器的附加库目录需要存在此lib
using namespace cv;
using namespace std;

int main(int argc, char** argv)
{
	Mat src = imread("D:/Test.png");
	imshow("picture", src);
	waitKey(0);
	return 0;
}

效果:
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第18张图片

4.安装Eigen

方法与Opencv一样,
网上搜索Eigen,下载最新版
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第19张图片
解压缩
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第20张图片
添加 文件夹到附加库目录即可使用(不需要添加静态库与动态库)
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第21张图片

5.总结:

opencv 的安装是最麻烦的,因为头文件,动态库,静态库都涉及到了,出现错误请务必按流程检查,静态库添加是否正确,动态库是否缺少
由此总结出C++第三方库的使用,有文档按照文档进行安装与使用,没有文档则按照静态库,动态库,头文件,分别添加三者的引用即可。

6.Vs2019 使用Cmake(推荐)

新建Cmake项目
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第22张图片
添加头文件,静态库
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第23张图片

Cmakelists 参考

# CMakeList.txt: VS2019Cmake 的 CMake 项目,在此处包括源代码并定义
# 项目特定的逻辑。
#
cmake_minimum_required (VERSION 3.8)

project ("VS2019Cmake")


# 头文件
include_directories(D:/Games101Learn/package/opencv/build/include)
include_directories(D:/Games101Learn/package/Eigen/eigen-3.4.0)

#静态链接库
link_directories(D:/Games101Learn/package/opencv/build/x64/vc15/lib)

# 将源代码添加到此项目的可执行文件。
add_executable (VS2019Cmake "VS2019Cmake.cpp" "VS2019Cmake.h" "my.cpp" "my.h")

# TODO: 如有需要,请添加测试并安装目标。

参考代码:
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第24张图片

运行即可

vs2019 会自动智能提示添加到camke的头文件
Vs2019编写C++概述(Games101-windows环境搭建-使用opencv与Eigen)_第25张图片

7.建议使用Vcpkg(推荐)

建议使用Vcpkg 安装C++库,简单方便全自动

使用链接

你可能感兴趣的:(虚拟之美,工具,opencv,windows,c++,图形学,Games101)