opencv3.4.3 + vs2017 + cuda9.2 编译

1.环境说明

win10 操作系统 64 位

vs2017 版本是15.88 

显卡:NVIDIA GeForce 940MX

机器的cup是: inter i5 2.3G HZ  双核。

2.  用途说明:

我主要是想编译一个opencv3.4.3下边可以用cuda加速的版本,但发现还是有花不少时间的。

3. 编译过程主要是要注意的地方:

1.cuda sdk 的安装

这个在 https://developer.nvidia.com/cuda-toolkit-archive

我下载的是9.2的版本,我下载了10.00 安装时出错了,不知什么原因,可能是我机器的显卡太旧了吧!

这个版本我用默认选项安装的,安装后用工具看一下是否安装成功。

查找这个程序 bandwidthTest.exe 在命令行里运行一下,如果成功可以看到 PASS,如果失败可以看到失败。

第一次就是没有安装成功,导致后边cmke时提示找不到cuda 选项,如果这里成功了,在cmake时可以看到系统检测到cuda9.2。

安装成功后,重启电脑

也不用设什么环境变量,重启后我看了下,环境变量已是0k的。

安装时不要改默认的目录,我改过一次发现有问题。

2.cuda9.2的编译就要有些麻烦

主要是这个版本原来是2015上边编译的,现在我要用2017所以就有问题了,怎么办?

第一步

”vs 安装 =》 单个组件 =》选择vs2017 版本 15.4 v14.11 工具集“ 进行安装。

第二步

找到vs2017的

c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat 文件

进入到这个目录:运行

>cd  c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat

>vcvarsall.bat x64 -vcvars_ver=14.11

运行后可以看看现在是不是这个版本的cl

> cl -BV

编译器扫描遍数:
c:\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\bin\HostX64\x64\cl.exe:        版本 19.11.25548.2

如果看上边就可以了。

第三步

编译时会出现 下边这样的错误,就是这个地方版本要改

#if _MSC_VER < 1600 || _MSC_VER > 1912

改成 1920 高点没问题。

#if _MSC_VER < 1600 || _MSC_VER > 1920

要用管理员打开,保存。

这三个地方修改后就可以用2017来进行编译了。

第四步

下载opencv  cmake  opencv_contrib 可以看我原来的blog上边有的,在cmke 选项时去了WITH_LAPACK 这一项,否则会找其它的库的,什么openblas 库。

第五步

可以进行编译了,就是太慢了大概在我机器上边要用5个小时,中途一度以为有问题,差点停止掉,才能编译完debug 和release 两个版本。

猜你喜欢

转载自blog.csdn.net/yangzm/article/details/86525003