VS2010环境下OpenCV&OpenGL配置

在Visual Studio 2010环境下,配置OpenCV和OpenGL的详细步骤,包括设置包含目录和库引用,确保项目能够顺利编译和运行使用这两个库的代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


安装环境:
     Windows 7 64-bit
     Visual Studio 2010 (VC10)

OpenCV配置:
目标是配置完成的VS2010环境可以编译使用OpenCV的x86,x64程序。

1.解压OpenCV安装包( http://opencv.org/取得),
2.设置环境变量
     (1)添加OPENCV_DIR,值为OpenCV解压目录下的.\Build\x64\vc10(主要是方便配置,增强可移植性,也可以不设置,下面的配置过程均用绝对路径代替).
     (2)在PATH中添加项%OPENCV_DIR%\bin;(32位OpenCV程序执行用)和%OPENCV_DIR%\..\..\x86\vc10\bin;(64位OpenCV程序执行用).该步骤很重要,配置不当会造成编译的程序在运行时出错,为了令使用32/64位OpenCV库编译的程序均能正常执行,在PATH中将两项同时加入。
3.VS2010环境配置
     单项目配置:
          在 项目属性页->配置属性->VC++目录 中加入以下内容:

          包含目录(include):

          $(OPENCV_DIR)\..\..\include
          $(OPENCV_DIR)\..\..\include\opencv (不用1.0版OpenCV头文件可以不加)
          $(OPENCV_DIR)\..\..\include\opencv2

  库目录(lib):
          $(OPENCV_DIR)\..\..\x86\vc10\lib (x86版)
          $(OPENCV_DIR)\lib (x64版)

          在 项目属性页->配置属性->连接器->输入->附加依赖项 中加入以下内容(可根据需要选择性加入):
opencv_core248d.lib
opencv_imgproc248d.lib
opencv_highgui248d.lib
opencv_ml248d.lib
opencv_video248d.lib
opencv_features2d248d.lib
opencv_calib3d248d.lib
opencv_objdetect248d.lib
opencv_contrib248d.lib
opencv_legacy248d.lib
opencv_flann248d.lib

          全局配置:
               如果不想每次建立新项目均进行配置,可以把上述配置属性页选择性导出,每次建立新项目后附加即可.
               例:x64版的附加用属性页
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <IncludePath>$(OPENCV_DIR)\..\..\include;$(OPENCV_DIR)\..\..\include\opencv;$(OPENCV_DIR)\..\..\include\opencv2;$(IncludePath)</IncludePath>
    <LibraryPath>$(OPENCV_DIR)\lib;$(LibraryPath)</LibraryPath>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <Link>
      <AdditionalDependencies>opencv_core248d.lib;opencv_imgproc248d.lib;opencv_highgui248d.lib;opencv_ml248d.lib;opencv_video248d.lib;opencv_features2d248d.lib;opencv_calib3d248d.lib;opencv_objdetect248d.lib;opencv_contrib248d.lib;opencv_legacy248d.lib;opencv_flann248d.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>
</Project>


          
OpenGL配置:
     OpenGL库Windows自带,无需多加配置.下主要介绍glut环境配置.
     glut可以说是一个OpenGL在windows下的图形化操作接口库,主要提供的是OpenGL的窗口化支持,基本上就是给windows下使用OpenGL进行开发的人员用来调试其图形程序(算法)的一个库.

     1.glut库从官网上可下其源代码,常见为win32版,一个支持64位的Bin可从 http://www.idfun.de/glut64/下载.
     2.解压后,需要将头文件/库文件放到缺省include/lib文件夹下 或 在VS项目属性中加入相应目录.
     3.为了方便,我将glut.h放入$(WindowsSdkDir)include,将glut32.dll放入$(WindowsSdkDir)lib,将glut64.dll放入$(WindowsSdkDir)lib\x64.
     4.最后,将动态链接库glut32.dll放入%windir%\SysWOW64,将glut64.dll放入%windir%\System32(我也很想吐槽这种奇葩的结构...如果不想放,就把dll与编译生成的exe放在一起也是可以的).
     
     使用时需注意以下问题:原本glut库是建立在win32平台上的,对于后来加入的x64库,glut.h文件不会自动连接,其原话为:
/* To disable automatic library usage for GLUT, define GLUT_NO_LIB_PRAGMA

   in your compile preprocessor options. */

# if !defined (GLUT_BUILDING_LIB) && !defined(GLUT_NO_LIB_PRAGMA)

#  pragma comment (lib, "winmm.lib")      /* link with Windows MultiMedia lib */

/* To enable automatic SGI OpenGL for Windows library usage for GLUT,

   define GLUT_USE_SGI_OPENGL in your compile preprocessor options.  */

#  ifdef GLUT_USE_SGI_OPENGL

#   pragma comment ( lib, "opengl.lib" )    /* link with SGI OpenGL for Windows lib */

#   pragma comment ( lib, "glu.lib" )       /* link with SGI OpenGL Utility lib */

#   pragma comment ( lib, "glut.lib" )      /* link with Win32 GLUT for SGI OpenGL lib */

#  else

#   pragma comment ( lib, "opengl32.lib" )  /* link with Microsoft OpenGL lib */

#   pragma comment ( lib, "glu32.lib" )     /* link with Microsoft OpenGL Utility lib */

#   pragma comment ( lib, "glut32.lib" )    /* link with Win32 GLUT lib */

#  endif

# endif

     因此 ,在使用glut64.lib时,需要自己在连接器的参数中加入该库.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值