引言

每一个C++库的使用都是从开发环境的配置开始的,其实每个库的配置过程都是大同小异,总结下来有下面几个步骤:

  1. 下载库文件,这里假定是已经预先编译完成的。
  2. 配置库文件的包含目录(include)和库目录(lib)
  3. 配置库文件的动态链接库(dll),这一步是很多人容易忽略的。上面配置好包含目录和库目录,只是开发环境配置完成了,没有配置好dll,在使用该库的程序运行时,会造成操作系统无法加载库对应的动态链接库。

    下面以SDL的配置为例,详细说明是如何配置的。

SDL在visual studio下的开发环境配置

  1. 下载SDL开发库 http://www.libsdl.org/download-2.0.php 现在的稳定版本是2.0.4

  2. 配置VS的开发环境。

    Visual Studio 2008以后,在项目->属性下配置的VC++的包含目录及库,只针对当前项目有效,每次新建项目的时候都要配置一次,比较繁琐。这里使用项目属性表

    来配置环境,这样每次新建项目的时候只需要导入配置好的项目属性表即可。

    1. 切换到属性管理器视图,如下图所示



      如果,默认的属性管理器的视图没有打开,可以在视图-> 其他窗口->属性管理器将其打开,如下图:

    2. 新建一个项目属性表。属性管理器下游两个目录:Debug | Win32和Release | Win32,可以针对Debug和Release给项目设置不同的属性,这里仅仅配置Debug下的项目属性。右键Debug | Win32

      选择新建项目属性表,如下图:

    3. 在新建的项目属性表中,配置SDL的开环境。右键新建的属性表,选择属性,如下图所示:

    4. 配置动态链接库

      使用上面配置好的属性表,只能保证在开发的环境是好的,但是运行的时候操作系统却找不到SDL的动态链接库SDL2.dll,还需要告诉操作系统该dll的位置,有以下三种方法可以将该dll的位置

      告知操作系统

      1. 将 @\SDL2-2.0.4\lib\x86下的SDL2.DLL复制到C:\Windows\System32目录下面(如果是64位的要复制到C:\Windows\SysWOW64)(@为SDL所在的根目录)
      2. 将SDL2.dll复制到项目生成exe文件同目录下
      3. 将 @\SDL2-2.0.4\lib\x86 添加到环境变量PATH
  3. SDL程序的main函数

    要将SDL的main函数声明为如下形式
int main(int argv,char* argc[])

否则,会得到如下错误:

  1. 测试SDL配置是否正确
# include <SDL.h>
int main(int argc, char* argv)
{
//Start SDL
SDL_Init(SDL_INIT_EVERYTHING);
//Quit SDL
SDL_Quit();
return 0;
return 0;
}

FFMPEG

FFMPEG的配置和SDL的配置过程基本类似,所不同的是其下载的文件包。

要配置FFMPEGE的开发环境需要下载两个文件:Dev和Shared,如下图所示(下载地址:https://ffmpeg.zeranoe.com/builds/)



Dev文件只包含了include文件和lib文件,其dll文件在shared文件下。

Visual studio 通用开发环境配置:SDL,FFMPEG为例的更多相关文章

  1. Visual Studio 2012 开发环境配置+控制台工具+桌面应用程序

    一.界面布局视图设置 1.窗口的布局.控制台窗口运行恢复到开发环境的设置方法 也可以保存好设好的个性化设置,导入设置: 2.视图|服务器资源管理器(sever explorer) 可以访问数据源.服务 ...

  2. OpenGL超级宝典visual studio 2013开发环境配置,GLTools

    做三维重建需要用到OpenGL,开始看<OpenGL超级宝典>,新手第一步配置环境就折腾了一天,记录下环境的配置过程. <超级宝典>中的例子使用了GLEW,freeglut以及 ...

  3. Visual Studio OpenCV 开发环境配置

    因为VS配置OpenCV好多新手都很难一次配置成功,而且OpenCV库每新建一个项目都要配置很是麻烦,所以今天就给大家介绍一个“一劳永逸”的方法. 注:理论上只要VS和OpenCV是版本兼容的,该方法 ...

  4. 打造TypeScript的Visual Studio Code开发环境

    打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...

  5. Visual Studio 2017开发环境的安装

    Visual Studio 2017是微软为了配合.NET战略推出的IDE开发环境,同时也是目前开发C#程序最新的工具,本节以Visual Studio 2017社区版的安装为例讲解具体的安装步骤. ...

  6. Google Android Studio Kotlin 开发环境配置

    Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对Kotlin的重视,本文就介绍一下Android Studio下的Kot ...

  7. 配置合适的Visual Studio 2017 开发环境(其它版本的也适用)

    1.VS 安装完成后,可以重新配置合适的开发环境 第一步: 第二步: 第三步: 第四步:选择合适自己的开发环境 这里我选择常规,具体的可以看窗口右边的说明

  8. Visual Studio + Qt开发环境搭建

    1. 安装Visual Studio 2015 Visual Studio 2015下载地址如下,安装比较常规,不做介绍. Visual Studio Enterprise 2015 with Upd ...

  9. Unity3D-RPG项目实战(3):整合Visual Studio 2013开发环境

    古人云:工欲善其事必先利其器,IDE尽管属于一个非常上层的工具,可是一个好的IDE对工作效率提高还是非常大的. 事实上我还是满想用一下官方推荐的Mono,毕竟跨平台如今还是非常重要的一个特性.尝试了这 ...

随机推荐

  1. 前端框架 EasyUI (2)页面布局 Layout

    在 Web 程序中,页面布局对应用程序的用户体验至关重要. 在一般的信息管理类的 Web 应用程序中,页面结构通常有一个主工作区,然后在工作区上下左右靠近边界的区域设置一些边栏,用于显示信息或放置一些 ...

  2. .Net多线程编程—任务Task

    1 System.Threading.Tasks.Task简介 一个Task表示一个异步操作,Task的创建和执行是独立的. 只读属性: 返回值 名称 说明 object AsyncState 表示在 ...

  3. ASP.NET Core应用针对静态文件请求的处理[3]: StaticFileMiddleware中间件如何处理针对文件请求

    我们通过<以Web的形式发布静态文件>和<条件请求与区间请求>中的实例演示,以及上面针对条件请求和区间请求的介绍,从提供的功能和特性的角度对这个名为StaticFileMidd ...

  4. python笔记(持续更新)

    1.编译python遇到下面的编码问题:     SyntaxError: Non-ASCII character '\xe9' in file E:\projects\learn.py on lin ...

  5. AI人工智能系列随笔

    初探 AI人工智能系列随笔:syntaxnet 初探(1)

  6. c#语言规范

    0x00 分类 C#语言规范主要有两个来源,即我们熟知的ECMA规范和微软的规范.尽管C#的ECMA规范已经前后修订4次,但其内容仅仅到C# 2.0为止.所以慕容为了方便自己和各位方便查询,在此将常见 ...

  7. CSS 3 学习——transform 3D转换渲染

    以下内容根据官方规范翻译,没有翻译关于SVG变换的内容和关于矩阵计算的内容. 一般情况下,元素在一个无景深无立体感的平面(flat plane)上渲染,这个平面就是其包含块所处的平面.同时,页面上的其 ...

  8. MementoPattern(备忘录模式)

    /** * 备忘录模式 * @author TMAC-J * 用于存储bean的状态 */ public class MementoPattern { public class Memento{ pr ...

  9. SSH免手动输入密码和设置代理

    通过使用sshpass将密码写入命令里,直接执行,免去手动密码输入的步骤命令如下: sshpass -p password_abc ssh user_abc@ssh_host -p ssh_port ...

  10. EMD分析 Matlab 精华总结 附开源工具箱(全)

    前言: 本贴写于2016年12与15日,UK.最近在学习EMD(Empirical Mode Decomposition)和HHT(Hilbert-Huang Transform)多分辨信号处理,FQ ...