OpenGL学习笔记一之问题篇 开发工具配置报错

转载自 https://www.jianshu.com/p/8ba3401f610b

对于大多数程序猿,图像视频音频等的开发学习,其实最难的不是界面,也不是代码风格,而是算法。而要了解算法,有两条是必经之路,第一是对原理的理解,大部情况下,这是一个数学问题;第二条,就是对源码的解读,你必须 清楚地知道数学理论是如何变成代码,并最终产生想要的结果的。

学习OpenCv,也是如此。不过从OpenCV提供的源码来看,跨平台确实考虑得比较全面。当然如果你习惯于其他操作系统,这些可能都不是问题。不过我相信,大多数都习惯在windows下学习。至于你的开发平台到底是linux还是Android,那只不过是平台应用函数不同的问题,这些算法的基本原理都是一样的。

言归正传,下面开始讲在windows下调试编译OpenCV3.4.1的源码,这也是目前能得到的最新版本。好了,开始我们的源码编译之旅吧。

首先,到这里

https://cmake.org/download/

下载cmake

下载完了就要安装, 我的安装路径是D:\mc\CMake,所以其可执行文件的路径是D:\mc\CMake\bin如下,

 

 

双击打开cmake-gui,然后分别输入源码的地址和你要生成项目的目标地址,比如我的源码地址是D:\AOpencv\sources

目标地址是:D:\AOpencvProject,在cmake-gui中就要这样填写

 

如果一切正常的话,你点击configure,选择你的vc版本

 

之后,就能顺利进行第一步配置。如果不幸你看到了这个,error:

仔细看最下面文本框中的文字,报错的内容无非是CMake does not find Visual C++ compiler, cMake could not find any instance of Visual Studio.或者,CMake: failed to run MSBuild command: MSBuild.exe之类,那说明你的VC本身没有配置好,那就点开你的VC看一下吧,

工具--> 获取工具和功能,找到组件界面,确定在【编译器、生成工具和运行】-->勾选【用于cMake的visual c++工具】和【MSBuild】。如下图所示,

确认这两项都安装好了之后,注意看一下环境路径,把MSbuild.exe所地的目录位置添加到环境变量中去,例如我的msbuild.exe在这里,D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin,就要按如下方式添加环境变量,

我用的patheditor2,不用再解释了吧(https://blog.csdn.net/tanmx219/article/details/81436553)。

配置好了之后,最好把你目录下无用的东西全删除(例如这里的D:\AOpencvProject)重新启动你的cmake-gui.exe,再点击那个configure,选择好vc版本,一切就应该恢复正常了。

提示:这里要注意的是,如果你需要 BUILD_opencv_world ,将会生成一个大的链接文件opencv_world341.dll , opencv_world341d.dll ,这就你通常所使用的库文件一致,否则生成的就是一系列的文件,你可以根据需要取舍,只使用自己用到的库文件。

出现configure done, 但还是有很多红色啊。没关系,再点击configure 一次,

 

好了,现在所有的红色都消失了,那就点击那个generate按钮,开始生成vc项目吧。

 

大功告成,generating done。!然后你点击Open Project按钮,就会自动为你打开openVC的visual C++项目啦。

然后就VC中开始生成项目吧,喝口水,过大约3分钟左右,

Yea! 现在可以愉快地进行opencv源码调试啦。

 

 

二 OpenGL的开发环境配置【VS2017】+常见问题

文章的详细配置:
参考1:OpenGL 开发环境配置(Windows) - Visual Studio 2017 + GLFW + GLAD 详细图文教程
参考2:OpenGL+VS2017 环境配置
参考3:[OpenGL]配置GLFW
配置流程在这片文章中有详细说明,我主要提几个配置中遇到的坑

  1. 新建一个空项目,如果新建Windows控制台应用程序,程序内部会自动包含pch.h的头文件,必须在源文件的开头协商#include"pch.h"或者其他预编译头,而且之后引入GLEW,GLFW有莫名其妙的错误,所以创建一个空项目。
  2. E0035 #error 指令: OpenGL header already included, remove this include, glad already provides it解决方法有两种:
    2.1 删去第三行的glad.h头文件,头文件定义冲突
    在这里插入图片描述
    2.2 这个方法比较粗暴,我从网上看到的:在glad.h文件中注释掉error:OpenGL header already included, remove this include, glad already provides it
  3. GL_COLOR_BUFFER_BIT等变量未找到定义:
    解决方法:将iostream.h文件放在头文件最末尾

 

三 C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件

解决方式

1、点 调试,然后 选项和设置 
这里写图片描述 
2、右边勾上 启用源服务器支持 
这里写图片描述 
3、左边点 符号,把 微软符号服务器 勾选上 
这里写图片描述 
4、运行的时候等一下,加载完成后就好了。 
5、只是第一次加载,不用担心。或者,你也可以等加载完了之后,再把之前勾选的取消掉,也没有问题。 

这里写图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值