Visual Studio 2015 中 SDL2 开发环境的搭建

2024-01-01 13:36

本文主要是介绍Visual Studio 2015 中 SDL2 开发环境的搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Visual Studio 2015 中 SDL2 开发环境的搭建

  • Visual Studio 2015 中 SDL2 开发环境的搭建
    • 新建控制台工程
    • 拷贝并配置 SDL2 开发文件
      • 拷贝 SDL2 开发文件
      • 配置 SDL2 开发文件
    • 测试
    • SDL2 开发文件的下载链接

Visual Studio 2015 中 SDL2 开发环境的搭建

新建控制台工程

新建 Win32 控制台应用程序。

具体流程:文件->新建->项目->Win32控制台应用程序。

拷贝并配置 SDL2 开发文件

拷贝 SDL2 开发文件

  1. 头文件(*.h)拷贝至项目文件夹的 include 子文件夹下。
  2. 导入库文件(*.lib)拷贝至项目文件夹的 lib 子文件夹下。
  3. 动态库文件(*.dll)拷贝至项目文件夹下。

配置 SDL2 开发文件

  1. 打开属性面板:解决方案资源管理器->右键单击项目->属性。

  2. 头文件配置:配置属性->C/C+±>常规->附加包含目录,输入“include”(刚才拷贝文件的目录)。

  3. 导入库配置:配置属性->链接器->常规->附加库目录,输入“lib” (刚才拷贝文件的目录),配置属性->链接器->输入->附加依赖项,输入“SDL2.lib; SDL2main.lib”(导入库的文件名)。

  4. 动态库不用配置。

测试

  1. 创建源代码文件:在工程中创建一个包含 main() 函数的 C/C++ 文件(如果已经有了可以跳过这一步)。
  2. 包含头文件:
    • 如果是 C 语言中使用 SDL2,则直接使用下面代码:
    #include "SDL2/SDL.h"
    
    • 如果是 C++ 语言中使用 SDL2,则使用下面代码:
    #define __STDC_CONSTANT_MACROS
    extern "C"
    {
    #include "SDL2/SDL.h"
    }
    
  3. main() 中调用一个 SDL2 的初始化函数:
    int main(int argc, char* argv[])
    {if (SDL_Init(SDL_INIT_VIDEO)){printf("Could not initialize SDL - %s\n", SDL_GetError());}else{printf("Success init SDL");}return 0;
    }
    

中间遇到 2 个报错:

报错 1:LNK2019 无法解析的外部符号 __imp__fprintf,该符号在函数 _ShowError 中被引用

解决方法:添加以下代码:

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

报错 2:LNK2019 无法解析的外部符号 __imp____iob_func,该符号在函数 _ShowError 中被引用

解决方法:添加以下代码:

extern "C"
{
FILE __iob_func[3] = { *stdin, *stdout, *stderr };
}

添加完上面的的代码,运行程序。如果运行无误,则代表 SDL2 已经配置完成。

在这里插入图片描述

PS:这里要在打印语句处设置断点,不然输出完程序就结束了,来不及看输出。

SDL2 开发文件的下载链接

链接:SDL2 库.zip

来自雷霄骅博士,属于比较旧的版本。

这篇关于Visual Studio 2015 中 SDL2 开发环境的搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/559405

相关文章

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

利用Python开发Markdown表格结构转换为Excel工具

《利用Python开发Markdown表格结构转换为Excel工具》在数据管理和文档编写过程中,我们经常使用Markdown来记录表格数据,但它没有Excel使用方便,所以本文将使用Python编写一... 目录1.完整代码2. 项目概述3. 代码解析3.1 依赖库3.2 GUI 设计3.3 解析 Mark

利用Go语言开发文件操作工具轻松处理所有文件

《利用Go语言开发文件操作工具轻松处理所有文件》在后端开发中,文件操作是一个非常常见但又容易出错的场景,本文小编要向大家介绍一个强大的Go语言文件操作工具库,它能帮你轻松处理各种文件操作场景... 目录为什么需要这个工具?核心功能详解1. 文件/目录存javascript在性检查2. 批量创建目录3. 文件

基于Python开发批量提取Excel图片的小工具

《基于Python开发批量提取Excel图片的小工具》这篇文章主要为大家详细介绍了如何使用Python中的openpyxl库开发一个小工具,可以实现批量提取Excel图片,有需要的小伙伴可以参考一下... 目前有一个需求,就是批量读取当前目录下所有文件夹里的Excel文件,去获取出Excel文件中的图片,并

Centos环境下Tomcat虚拟主机配置详细教程

《Centos环境下Tomcat虚拟主机配置详细教程》这篇文章主要讲的是在CentOS系统上,如何一步步配置Tomcat的虚拟主机,内容很简单,从目录准备到配置文件修改,再到重启和测试,手把手带你搞定... 目录1. 准备虚拟主机的目录和内容创建目录添加测试文件2. 修改 Tomcat 的 server.X

VSCode配置Anaconda Python环境的实现

《VSCode配置AnacondaPython环境的实现》VisualStudioCode中可以使用Anaconda环境进行Python开发,本文主要介绍了VSCode配置AnacondaPytho... 目录前言一、安装 Visual Studio Code 和 Anaconda二、创建或激活 conda

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对