EGE 安装与配置

专栏: EGE专栏

导航: EGE专栏内容导航

下一篇:(一)EGE介绍

目录

EGE 免配置的入门 IDE 推荐——小熊猫 C++

小熊猫C++

  这里推荐一款由高校老师开发的一款界面类似 Dev-C++ 的面向初学者的编程开发工具——小熊猫 C++

  小熊猫C++ 相比 Dev-C++ 增加了自动补全、实时错误提示、试题集和 OJ、GIT 版本管理等不少实用功能,UI 上也进行了优化。如果是之前就已经在使用诸如 Dev-C++、Code Blocks、C-Free 之类的入门级 IDE (集成开发环境),那么推荐下载使用小熊猫 C++。小熊猫 C++ 已集成 EGE 图形库,即开即用,无需自行配置
  这并不是因为小熊猫 C++ 集成了 EGE 才特别推荐,而是其它几款入门级 IDE 早已处于停止维护的状态,不仅缺少自动补全、实时错误提示等重要功能,而且还存在着不少 bug 无人修复,这对于自学编程有一定的影响。小熊猫 C++ 正处于正常维护、快速迭代的阶段,这意味着用户可以在社区向开发者提出功能需求、提交BUG,帮助开发者不断改进完善软件、提升用户体验。当然,如果能够使用更为专业的诸如 Visual Studio、CLion、Visual Studio Code 之类的集成开发环境更好。但鉴于以往的经验来看,一直使用 Dev-C++ 的初学者大多数是由于嫌麻烦、专业软件占用系统资源过多以及不愿意走出舒适区等原因而不愿意使用这些专业的集成开发环境,故而折中推荐小熊猫 C++。

小熊猫 C++ 官方网站

在这里插入图片描述

  小熊猫 C++ 有多个版本可供下载,需要选择 自带编译器的版本 下载。目前个人电脑基本上都是 64 位的,直接下载 64 位版本的即可。

  • 绿色版为免安装版本,不需要进行安装。解压后在解压出来的文件夹中找到对应的 exe 可执行文件,双击运行即可使用。方便存放到U盘中携带到学校机房等其它环境中即开即用。(可以在桌面上创建快捷方式,方便打开软件)
  • Setup 版为安装版,运行后会引导用户将软件安装到电脑上。

  下面为 蓝奏云 内的 小熊猫 C++ 文件截图。选择 64 位带编译器 的 Setup 版或绿色版下载即可。

在这里插入图片描述

  在小熊猫 C++ 中,单个 cpp 文件的 EGE 程序 直接编译运行 即可。如果想要在项目中使用EGE,则需要在新建项目时,在 多媒体 类别中选择 xege 模板来创建。

在这里插入图片描述

在这里插入图片描述

   如下所示,项目创建成功后,会提供一个旋转五角星的示例程序,编译运行即可看到旋转五角星动画。如果没有看到五角星示例程序,那就要回头检查一下,看创建时是否选择了正确的 xege 项目模板。

在这里插入图片描述



一、EGE图形库配置相关

参考自 :EGE官网 安装&配置

1. 讲解的IDE

  本文中讲解的 IDE 包含以下几种,除此之外还讲解命令行下如何使用 GCC 编译 EGE 项目。

MSVCGCCCMAKE
集成开发环境Visual Studio小熊猫 C++Code Blocks Dev-C++ Visual Studio CodeEclipse IDE for C/C++C-FreeCLion

2. 配置信息速览

  这里列出的内容仅仅是为了方便后续配置时快速复制粘贴,具体配置步骤请看后面的内容。

2.1 GCC链接参数

编译目标链接参数(共 9 个)
64位-lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus
32位-lgraphics -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

2.2 GCC需链接的库

编译目标链接的库(共 9 个)
64位libgraphics64.a; libgdi32.a; libimm32.a; libmsimg32.a; libole32.a; liboleaut32.a; libwinmm.a; libuuid.a; libgdiplus.a
32位libgraphics.a; libgdi32.a; libimm32.a; libmsimg32.a; libole32.a; liboleaut32.a; libwinmm.a; libuuid.a; libgdiplus.a

2.3 测试示例

  下面是用于测试 EGE 是否配置成功的一个简单示例程序。编译成功后运行,会出现一个画着红色圆圈的白色窗口。

#include <graphics.h>					//包含EGE库头文件

int main()
{
	initgraph(640, 480);				//初始化图形界面
	
	setcolor(EGERGB(0xFF, 0x0, 0x0));	//设置绘画颜色为红色
	
	setbkcolor(WHITE);					//设置背景颜色为白色
	
	circle(320, 240, 100);				//画圆
	
	getch();							//暂停,等待键盘按键

	closegraph();						//关闭图形界面
	
	return 0;
}

3. 配置失败时可加群询问

  如果尝试一两次仍未配置成功,建议加 EGE官方群1060223135 询问,把更多的时间花在学习图形库的使用上,而不是在配置上浪费过多的时间。
  注意带上 报错信息截图,并说明自己使用的编程软件,以及按照哪个教程配置,配置到了哪一步等等。

在这里插入图片描述

二、EGE安装包下载

官网下载地址:https://xege.org/install_and_config

  EGE 较新版本相比旧版会增加部分功能,小部分接口也会不兼容,而教程是根据最新版更新的,所以尽量安装最新版本

在这里插入图片描述

三、安装

  EGE图形库需要根据自己的 IDE 来进行配置,下面仅对 Visual Studio 、CodeBlocks、DevC++、C-Free、VS Code、Eclipse for C/C++、CLion 这些较为常用的 IDE 进行介绍,其余的自行参考。

  如果按照下面的步骤配置不成功,可以找找其他人的配置教程试试,可能与 EGE 版本、编译器版本、个人电脑环境配置等有关。


1. 安装步骤简要介绍

  安装主要是三个步骤,其实不复杂,篇幅比较长是因为有很多过程截图。
三个步骤:
  ①指定编译器的头文件搜索路径(或者将EGE库的头文件放置到软件安装目录的 include 文件夹内)
  ②指定编译器的库文件搜索路径(或者将EGE库的库文件放置到软件安装目录的 lib 文件夹内)
  ③配置链接参数,链接相关的库(Visual Studio不需要)


2. Visual Studio 配置 EGE

Visual Studio Icon

  Visual Studio 配置只需将 EGE 安装包中的文件放置到正确位置即可。

2.1 EGE 安装包目录与 Visual Studio 目录对应说明

  Visual Studio 安装 EGE,主要是将安装包中 include 文件夹中的头文件和 lib 文件夹中的库文件,复制到 VS 安装目录中对应的位置,具体如下图所示。

  头文件只需复制一份,而 64 位和 32 位的平台则需要不同的库,因此会有 graphics64.libgraphics.lib 两个库文件。

在这里插入图片描述

2.2 EGE库的配置

2.2.1 头文件和库文件目录的查找

参考路径: F:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS

  可以通过桌面快捷方式,右键选择打开文件所在位置。此时文件资源管理器会打开并跳转到文件所在位置。

在这里插入图片描述

  跳转后如下图所示 (注意,每台电脑上 Visual Studio 的安装目录不一定相同,无需在意)。注意看一下上面地址栏所显示的位置。

在这里插入图片描述

  我们点击一下上方地址栏中的 Community (社区版)进入到 Community 目录。如果是专业版则点击 Professional 进入到 Professional 目录。

  如下图所示,在这个目录中有个 VC 文件夹,这个文件夹就包含了 Visual Studio 的 C++ 编译器相关文件。

在这里插入图片描述

我们再顺着VC目录,依次进入 Auxiliary → \rightarrow VS 目录。

在这里插入图片描述

参考路径: F:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS

  可以看到,在这个目录内,包含着 includelib 这两个文件夹。里面分别存放着C++ 头文件和库文件,这就是我们要找的目标。
在这里插入图片描述

2.2.2 include 文件夹的复制

在这里插入图片描述

参考路径: F:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include

  进入到 Auxiliary\VSinclude 目录中,可以看到里面有如下所示的文件,这是 Visual Studio 存放头文件的其中一个目录,接下来我们要将 EGE 库中的头文件复制到这里来。

在这里插入图片描述

  打开刚才解压后的 EGE 安装包,将EGE安装包中的 include 目录中的所有文件全选复制,粘贴到刚才的 Visual Studio 的 include 目录下。

  如果 EGE 安装包中没有 graphics.h文件,可以在官网内下载安装包。

在这里插入图片描述

  文件复制粘贴后如下图所示。

在这里插入图片描述

2.2.3 lib库文件的复制

在这里插入图片描述

参考路径: F:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\lib

  找到 Visual Studio 中的 lib 目录并进入(就在 include 目录的旁边)。

在这里插入图片描述

  如下图所示,lib 目录中有 x64x86 两个文件夹。x64 文件夹中存放的是 64 位库文件,x86 文件夹中存放的是32位库文件。

在这里插入图片描述

  在 EGE 安装包中找到 lib 目录,然后根据自己的 Visual Studio 版本进入相应的目录中。(VS2022 使用 VS2019 的库文件即可。)

在这里插入图片描述

  可以看到里面同样有 x86x64两个文件夹。我们直接将这两个文件夹全选并复制。
在这里插入图片描述
  回到 Visual Studio 的 lib 目录内,粘贴刚才复制的两个文件夹即可 (复制进来的两个文件夹与里面的文件夹同名,会自动合并)。

在这里插入图片描述

  进入到 x64x86 目录中确认一下,看到里面的 graphics64.libgraphics.lib 文件已经被成功复制过来就 OK 了。
在这里插入图片描述
在这里插入图片描述
  到此在 Visual Studio 中的配置就完成了,接下来我们来编译运行一下 EGE 示例程序,来确认一下上面的步骤是否正确完成。

2.3 安装测试

  上面文件放置已经完成,现在新建项目进行测试,确认是否配置成功。

2.3.1 新建空项目

用 Visual Studio 新建一个项目(空项目
  如果不知道怎么用 Visual Studio 新建空项目,可以查看以下教程(其它版本可以在网上自行搜索):

Visual Studio版本教程链接
Visual Studio 2017VS2017 创建新项目
Visual Studio 2019VS2019 创建新项目
Visual Studio 2022VS2022 创建新项目

在这里插入图片描述
在这里插入图片描述

  ① 在项目中新建一个.cpp文件,写入测试代码,编译,运行。

在这里插入图片描述
在这里插入图片描述

  下面为测试代码(点击代码块右上方复制按钮进行复制),粘贴到源文件中。

#include <graphics.h>					//包含EGE的头文件

int main()
{
	initgraph(640, 480);				//初始化图形界面
	
	setcolor(EGERGB(0xFF, 0x0, 0x0));	//设置绘画颜色为红色
	
	setbkcolor(WHITE);					//设置背景颜色为白色
	
	circle(320, 240, 100);				//画圆
	
	getch();							//暂停,等待键盘按键

	closegraph();						//关闭图形界面
	
	return 0;
}

在这里插入图片描述
  在 调试 → \rightarrow 菜单下选择 开始执行(不调试)

在这里插入图片描述

  编译运行后,如果能看到下图就说明已经安装好了。

  如果编译出错,检查一下文件放置位置是否正确,还有一种可能是安装了多个Visual Studio,配置的和使用的并非同一个。

在这里插入图片描述

2.4 VS2019 去掉控制台

  如果VS2019总是自动跳出控制台,则需要设置一下在 项目属性中 设置一下 子系统, 如果原先是控制台,那么设置成未设置
  ① 点击项目->项目属性,进入到项目属性设置界面。

在这里插入图片描述
  ② 点击 链接器 ->系统,在 子系统 的下拉列表中选择 未设置,点击确定保存设置。

在这里插入图片描述



3. Codeblocks

3.1 Codeblocks下载链接

http://www.codeblocks.org/downloads/26

在这里插入图片描述

3.2 CodeBlocks不同版本覆盖安装问题

  因为CodeBlocks多个版本用的是统一的配置文件,并且软件自身有问题,如果之前已经安装有旧版本,再安装新其它本时,编译器路径等配置可能会沿用之前的设置,不懂得自动调整,需要自己修改一下。

  ① 点击 设置(Settins) → \rightarrow 编译器(Compiler),打开编译器设置。

在这里插入图片描述

  ② 在 工具链可执行文件(Toolchain executables) 中,会有一个编译器安装目录栏,如果路径不在当前使用版本的安装目录中,那么点击一下右边的 自动检测(Auto-detect) ,让软件自动修改到当前安装版本的编译器目录中。
  如果点击后还是没有设置为正确的编译器目录,自己点击浏览目录,选择正确的编译器目录。

  这个目录是bin目录的上一级目录,如图中,MinGW的子目录中包含bin目录。

在这里插入图片描述

  ③ 点击 设置(Settins) → \rightarrow 调试器(Debugger),打开 调试器设置

在这里插入图片描述

  ④ 设置一下gdb.exe的路径,选择编译器目录中的bin目录下的 gdb.exe,否则调试可能出错。

在这里插入图片描述

3.3 解压 EGE 安装包

  在根目录或者其它目录新建一个文件夹,将EGE的安装包解压到其中。最好不要随便乱放,后面要用到,可以像下图一样在根目录建一个命名为ege的文件夹。

在这里插入图片描述

3.4 配置 EGE 的步骤

  配置 EGE 有两种方式,一种是在全局设置里配置,另一种是在项目设置里配置,这两种的配置步骤是一样的。由于项目配置只针对项目,新建项目后又需要重新配置,所以这里只讲如何在全局设置中配置,全局设置里完成后后面无需再进行配置。

  注意:配置不需要将 EGE 的文件放到 Code Blocks 安装目录中,如果参考了其它教程有复制文件步骤,请将之前复制到 Code Blocks 安装目录里的 EGE 文件删除,避免因文件复制错误而影响后面的配置(可以通过搜索或者按修改日期排序来查找)

项目设置的位置
  这里是针对项目的配置,如果想配置,需要新建项目。
在这里插入图片描述
全局设置的位置
  这里是针对所有项目和文件的配置,设置后所有项目和文件都会使用这些配置参数。
在这里插入图片描述

3.4.1 添加包含路径和库路径

  ① 启动 CodeBlocks , 点击 设置(Settings) → \rightarrow 编译器(Compiler),打开编译器设置。
在这里插入图片描述
  ② 在 全局编译器设置(Global compiler settings) 里面,点击 搜索目录(Search directories) 。点击 编译器(Compiler) ,然后添加之前解压出的EGE文件夹中的 include目录。

在这里插入图片描述
  我们可以在文件资源管理器的地址栏中复制 include 路径,然后粘贴进去即可。
在这里插入图片描述

  ③ 在 全局编译器设置(Global compiler settings) 里面,点击 搜索目录(Search directories) 。点击 链接器(Linker) ,然后按如下图所示的步骤添加之前解压出的EGE文件夹中的 lib\codeblocks17.12lib\codeblocks20.03 目录。

在这里插入图片描述

  路径可以从文件资源管理器中复制,在解压出的EGE文件夹中,根据安装的 CodeBlocks版本 选择相应的文件夹,在地址栏复制目录路径。
在这里插入图片描述
  打开对应版本的目录 (这里以CodeBlocks20.03为例),复制地址栏上的路径。
在这里插入图片描述

3.4.2 链接参数

  在 链接器(Llinker settings) 设置里,添加要链接的库。
  如果是 CodeBlocks20.03,添加64位的库 libgraphics64.a,复制以下内容填写

libgraphics64.a; libgdi32.a; libimm32.a; libmsimg32.a; libole32.a; liboleaut32.a; libwinmm.a; libuuid.a; libgdiplus.a

  如果是 CodeBlocks17.12,添加32位的库libgraphics.a,复制以下内容填写

libgraphics.a; libgdi32.a; libimm32.a; libmsimg32.a; libole32.a; liboleaut32.a; libwinmm.a; libuuid.a; libgdiplus.a

  填写完毕点击OK保存设置。
在这里插入图片描述

3.4.3 测试是否配置好
3.4.3.1 点击左上角的新建文件

  点击左上角的新建文件按钮,选择 空文件(Empty file)
在这里插入图片描述

  需要注意的是,这里我们只是直接新建一个源文件来编译运行程序,并没有创建项目。

  如果你想创建项目,建议创建 空项目(Empty project)

在这里插入图片描述

  如果你想创建的是 控制台应用(Console application),那么必须在语言里选择 C++

在这里插入图片描述

3.4.3.2 输入测试代码

  复制以下代码,粘贴到文件中。

#include <graphics.h>
//using namespace ege;

int main()
{
	initgraph(640, 480);
	//设置绘画颜色为红色
	setcolor(EGERGB(0xFF, 0x0, 0x0));
	//设置背景颜色为白色
	setbkcolor(WHITE);
	//画圆
	circle(320, 240, 100);

	getch();

	closegraph();
	return 0;
}

  按 Ctrl + S 快捷键保存文件,或者点击保存按钮也行。在保存文件的对话框中,选择一个合适的位置存放文件,并填写 以 .cpp 为后缀的文件名,如 main.cpp,点击保存。

在这里插入图片描述

  填写好后如下图所示。

在这里插入图片描述

3.4.3.3 编译运行

  点击上方中的 构建并运行(Build and run) 按钮,查看是否能够运行成功。

在这里插入图片描述
  如果运行后出现如下所示的图形界面,就说明配置成功了。

在这里插入图片描述




4. Dev-C++

  首先不推荐使用 Dev-C++ 作为编程开发的工具,希望能尽快过渡到专业软件上,如果喜欢 Dev-C++ 的简单,那么建议换成 小熊猫C++
  鉴于仍旧有较多的初学者在使用 Dev-C++,所以这里还是讲解一下如何在 Dev-C++ 中配置EGE。

所用DevC++版本: 5.11 版本, 64位
附 DevC++下载链接 : https://sourceforge.net/projects/orwelldevcpp/

4.1 小熊猫 C++

  这里推荐一款由高校老师开发的一款类似 Dev-C++ 的编程开发工具,内置EGE,打开即可使用,免去安装EGE的烦恼,相比 Dev-C++ 增加了智能补全,试题集和OJ、GIT版本管理等不少现代的实用功能。

小熊猫 C++ 官网

在这里插入图片描述

4.2 解压 EGE 安装包

  在根目录或者其它目录新建一个文件夹,将 EGE 的安装包解压到其中。最好不要随便乱放,后面要用到,可以像下图一样在根目录建一个命名为 ege 的文件夹。
在这里插入图片描述

4.3 配置EGE步骤

  注意:配置并不需要将 EGE 的文件放到 Dev-C++ 安装目录中,如果参考了其它教程有复制文件步骤,请将之前复制到 Dev-C++ 安装目录里的 EGE 文件删除,避免因文件复制错误而影响后面的配置(可以通过搜索或者按修改日期排序来查找)

4.3.1 添加包含路径和库路径

  ① 点击菜单栏 工具(Tools) → \rightarrow 编译选项(Compiler Options…),这时会弹出编译器选项窗口。

在这里插入图片描述

  弹出编译器选项窗口如下所示。
在这里插入图片描述

  ② 在刚才 EGE 解压出的文件夹中,找到文件目录中的 lib 目录下的 devcpp 目录(可以看到文件夹中有两个库文件),点击地址栏,复制其路径。

在这里插入图片描述

  在编译器选项窗口中,依次点击 目录 → \rightarrow ,将刚才复制的路径粘贴到输入框中,然后点击 添加 按钮。

在这里插入图片描述

  添加好后的库目录如下所示,刚才添加的目录已经显示在了库目录列表之中。

  点击确定按钮即可保存配置,同时会自动关闭窗口。因为后面还需要继续填写,所以这里暂时不点击确定,否则要重新打开编译器选项窗口。

在这里插入图片描述

  ③ 找到 EGE 文件中的 include文件夹 位置,复制地址栏中的路径。

在这里插入图片描述

  点击 C++包含文件,将刚才复制的 include目录路径填入输入栏中,点击 添加 按钮。

在这里插入图片描述
  如下图所示,显示在了列表中说明已经添加完成。点击确定,保存好刚才的配置。

在这里插入图片描述

4.3.2 配置链接参数

  继续在编译器选项窗口中进行配置。
在这里插入图片描述
  配置界面如下图所示,点击 编译器 ,先看上方配置是32位(32-bit)还是64位(64-bit),然后根据当前配置在下方的输入框中填入相应的内容。

配置在链接器命令行加入以下命令
64-bit-static -static-libgcc -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus
32-bit-static -static-libgcc -lgraphics -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

在这里插入图片描述

  看看上面编译器配置栏,记一下现在配置的是哪个(图中配置的是 64-bit Debug),等下要对所选的配置进行测试。

在这里插入图片描述

  最后点击确定 ,保存设置。

4.4 测试是否配置好

4.4.1 新建文件

  点击新建文件的按钮,选择 源代码

4.4.2 复制粘贴测试代码

  将下面的测试代码复制粘贴到文件中。

#include <graphics.h>					//包含EGE的头文件

int main()
{
	initgraph(640, 480);				//初始化图形界面
	
	setcolor(EGERGB(0xFF, 0x0, 0x0));	//设置绘画颜色为红色
	
	setbkcolor(WHITE);					//设置背景颜色为白色
	
	circle(320, 240, 100);				//画圆
	
	getch();							//暂停,等待键盘按键

	closegraph();						//关闭图形界面
	
	return 0;
}

  点击 保存 按钮。

在这里插入图片描述

  选择一个合适位置保存文件,文件名要以.cpp 为后缀,点击保存

在这里插入图片描述

4.4.3 选择刚才配置好的编译器配置

  在右上角选择刚才配置好的编译器配置。
在这里插入图片描述

4.4.4 编译运行,查看结果

  点击编译运行按钮。

在这里插入图片描述

  如果没有任何报错,出现如下界面,就说明已经安装成功,如果报错,那就回去检查检查哪一步出了问题。

在这里插入图片描述

4.5 重复上面两个步骤,直至完成6个配置

  上面测试好后,把其它5个编译器配置都配置完毕。

  再次点击菜单栏 工具(Tools) → \rightarrow 编译选项(Compiler Options…),打开编译器选项窗口。
在这里插入图片描述
  点开设置编译器配置,可以看到有6个配置,有64位和32位两种。刚才只配置了其中一个,现在要把这6个都配置完成,添加包含路径和库路径这6个都是一样的,只是32位和64位的链接参数有所不同,如图中所示。

在这里插入图片描述

  好的,现在重复上面的配置步骤,把这6个都配置完成就可以了。




5. 命令行使用 GCC 编译

请添加图片描述

  教程中所用 EGE 版本为 20.08,编译器版本:MinGW-w64 GCC 8.1.0 x86_64-posix-seh

  在命令行中编译 C++ 程序需要预先下载安装好编译器。教程里使用的 GCC 编译器是 MinGW-w64 ,而不是 MinGW,这两个是不相同的,需要注意。

5.1 MinGW-w64 的安装 (也可以下载TDM-GCC)


在这里插入图片描述

5.1.1 下载 MinGW-w64

MinGW-w64 Download

  本教程使用的是 64 位的 MinGW-w64 GCC-8.1.0 x86_64-posix-seh 版本。当然也可以使用更高版本,这里没有做过多的测试。

在这里插入图片描述

5.1.2 解压文件

  下载完成后, 选择一个合适的位置新建目录,将编译器压缩包解压到其中。如下图所示,压缩包解压在了 D:\mingw-w64 目录下。
在这里插入图片描述

5.1.3 添加 bin 路径到 Path 环境变量

windows10 如何添加环境变量
windows11 如何添加环境变量

  然后将上面的 bin 目录加到 环境变量 PATH 中,这里的目录是 D:\mingw-w64\mingw64\bin

在这里插入图片描述
在这里插入图片描述

  这样GCC就安装好了,命令行测试一下,先按 win + R 快捷键调出 运行 窗口, 输入 cmd,调出命令行。

在这里插入图片描述

  命令行输入 g++ --version 查看 g++ 版本信息, 输入gdb --version 查看gdb版本信息。如果能正确显示版本信息说明配置完成。

在这里插入图片描述

5.2 EGE 的安装

5.2.1 放置头文件

  把安装包 include 目录中的文件复制,粘贴到 mingw-w64x86_64-w64-mingw32 文件夹的 include 目录中。

参考路径 D:\mingw-w64\mingw64\x86_64-w64-mingw32\include

在这里插入图片描述
在这里插入图片描述

5.2.2 放置库文件

  把 EGE安装包 EGE20.08\lib\mingw64 目录下的库文件 libgraphics64.a 复制。

参考路径 D:\mingw-w64\mingw64\x86_64-w64-mingw32\lib

在这里插入图片描述
  粘贴到 mingw-w64lib目录中。

在这里插入图片描述

  EGE库配置完成。

5.3 使用命令行编译

  按照正常步骤编译即可,链接时需要加上一下参数来链接相关的库: -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

  新建一个文件夹,作为 工作目录(如果有合适的,不新建也行)
  如下图所示,在 E:/VSProject/egeCmd 下新建了一个ege 文件夹作为工作目录,即工作目录为 E:/VSProject/egeCmd/ege

在这里插入图片描述

5.3.1 编写程序

  如图,新建个 main.cpp 源文件,复制粘贴示例代码,保存
在这里插入图片描述
示例代码:

#include <graphics.h>					//包含EGE的头文件

int main()
{
	initgraph(640, 480);				//初始化图形界面
	
	setcolor(EGERGB(0xFF, 0x0, 0x0));	//设置绘画颜色为红色
	
	setbkcolor(WHITE);					//设置背景颜色为白色
	
	circle(320, 240, 100);				//画圆
	
	getch();							//暂停,等待键盘按键

	closegraph();						//关闭图形界面
	
	return 0;
}
5.3.2 打开命令行

  先win + R调出 运行, 输入cmd,调出命令行。

在这里插入图片描述
在这里插入图片描述

5.3.3 切换盘符

  命令行打开后,当前目录一般是 C:\Users\用户
  首先需要切换到工作目录所在的盘符,工作目录为 E:/VSProject/egeCmd/ege, 在 E 盘。
  命令行输入命令 E:

在这里插入图片描述

5.3.4 跳转到工作目录

  使用 cd 目录命令跳转,工作目录为 E:\VSProject\egeCmd\ege,所以命令是
cd E:\VSProject\egeCmd\ege

在这里插入图片描述

5.3.5 编译

  输入命令 g++ 源文件名 -o 生成文件名.exe 链接参数

编译目标EGE 需要的链接参数
64 位-lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus
32 位-lgraphics -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

  根据我上面的文件,命令为:(源文件名可以使用 *.cpp, 这代表编译目录中所有源文件,部分编译器无法使用通配符*)

g++ main.cpp -o ege.exe -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

  命令执行如下所示,没有出现报错信息。
在这里插入图片描述
  如果编译链接成功,就会生成exe文件,命令中已经将生成文件命名为ege.exe
在这里插入图片描述
  如果出现了下面 undefined reference to __gxx_personality_seh0 之类的错误,那么 很可能是下载错了 GCC版本,编译64位程序请确认下载的是 x86_64-posix-seh, 而不是 x86_64-posit-sjlj

在这里插入图片描述

运行程序
  命令行输入exe文件名,或者直接双击exe文件,运行程序,这里是 ege.exe

在这里插入图片描述

多文件编译

  如下图,有两个源文件,一个头文件
在这里插入图片描述
下面是上图中三个文件的内容
main.cpp

#include <graphics.h>					//包含EGE的头文件
#include "test.h"

int main()
{
	initgraph(640, 480);				//初始化图形界面
	
	setcolor(EGERGB(0xFF, 0x0, 0x0));	//设置绘画颜色为红色
	
	setbkcolor(WHITE);					//设置背景颜色为白色
	
	circle(320, 240, 100);				//画圆
	
	draw();								//调用其它源文件的函数
	
	getch();							//暂停,等待键盘按键

	closegraph();						//关闭图形界面
	
	return 0;
}

test.h

#ifndef _HEAD_TEST_H
#define _HEAD_TEST_H

void draw();

#endif //!_HEAD_TEST_H

test.cpp

#include <graphics.h>
#include "test.h"

void draw()
{
	setfillcolor(BLUE);
	bar(100, 100, 300, 300);
}

  如果有一个或多个源文件,那么 g++命令 中的 文件名 换成 *.cpp,(表示编译当前目录下所有 cpp 文件),即

g++ *.cpp -o ege.exe -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

  如果所使用的编译器不支持 * 通配符,那么就要在命令里输入所有要编译的 cpp 源文件:

g++ main.cpp test.cpp -o ege.exe -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

在这里插入图片描述

  如果编译链接成功,会生成 exe 可执行文件,可以查看 修改日期 一栏,检查 exe 可执行文件是否是刚刚生成。
在这里插入图片描述
运行程序
  命令行输入exe文件名,或者直接双击exe文件,运行程序,这里是 ege.exe

在这里插入图片描述

  其它GCC命令,可以自行上网查找资料。




6. Visual Studio Code


  Visual Studio Code (简称 VS Code)作为代码编辑器,应用市场中数量庞大的扩展赋予了其极其强大的功能。借助这些扩展,我们可以在 Visual Studio Code 中搭建各种各样的开发环境。下面就来介绍如何在 Visual Studio Code 中搭建 ege 开发环境。

  ege 是 C++ 库,在搭建了 C++ 开发环境后就可以加以配置以进行 ege 程序开发。因此,除了 ege 官方开发的 vscode-ege 扩展外,其它支持命令配置的 C++ 扩展也可以用于搭建 ege 开发环境。

图标Visual Studio Code 扩展说明
在这里插入图片描述egeege 官方扩展,用于快速搭建 ege 开发环境,支持单文件一键编译运行,项目构建依赖 CMake,调试依赖 C/C++ 插件
在这里插入图片描述C/C++Visual Studio Code 官方 C/C++ 扩展,为 Visual Studio Code 提供 C++ 语言支持,包括编辑(智能感知)和调试功能
在这里插入图片描述Code Runner支持多语言(包括 C 和 C++)编译运行的扩展

6.1 通过 ege 扩展搭建开发环境

在这里插入图片描述
  ege 扩展由 ege 官方开发,可在 Visual Studio Code 中快速搭建 ege 开发环境,支持单文件编译运行,可生成 CMake 项目模板,借助 C/C++ 扩展对代码进行调试。

6.1.1 软件安装

  扩展目前已在 WindowsmacOS 下通过测试,需要借助外部编译器来对源代码进行编译,项目则借助 CMake 进行构建。
  如果使用的是 LinuxmacOS 系统,那么为了运行 Windows 程序,还需要安装 Wine。

在这里插入图片描述

Windows 平台编译器预先安装软件预先安装 Visual Studio Code 扩展
单文件MSVCVisual Studio (支持 2017, 2019, 2022 及以上版本)
项目MSVCVisual Studio (支持 2017, 2019, 2022 及以上版本)
CMake(构建工具)
C/C++ 扩展
Linux, macOS 平台编译器预先安装软件预先安装 Visual Studio Code 扩展
单文件mingw-w64mingw-w64(编译器)
wine(在 macOS 上运行 Windows 程序)
项目mingw-w64mingw-w64(编译器)
CMake(构建工具)
wine(在 macOS 上运行 Windows 程序)
C/C++ 扩展
6.1.2 扩展安装 (ege, C/C++)

  在 Visual Studio Code 的应用商店中搜索 egeC/C++CMake 这三个扩展进行安装。

在这里插入图片描述

扩展是否必需说明
在这里插入图片描述ege用于搭建 ege 开发环境
在这里插入图片描述C/C++提供 C++ 代码补全,语法错误分析,代码调试等功能
在这里插入图片描述CMakeCMake 语言支持,提供 CMake 语法高亮,代码补全等
6.1.3 ege 扩展的使用

  在安装好以上所需的软件和 Visual Studio Code 扩展后,下面介绍如何使用 ege 扩展来编译和运行 ege 程序。

6.1.3.1 单文件编译

  在 Visual Studio Code 中打开一个 ege 源文件,在代码编辑区域内右键,在右键菜单中选择 EGE: Build and run current file (构建和运行当前文件)

#include <graphics.h>

int main()
{
    initgraph(640, 480);
    circle(200, 200, 200);

    getch();
    closegraph();

    return 0;
}

在这里插入图片描述

  首次运行会弹出初始化提示框,点击确定 (哦) 即可。同时,还自动打开了一个文件目录。

在这里插入图片描述
在这里插入图片描述
  如果你想把 EGE 库安装在 Visual Studio 中,那么可以运行文件目录中的 bat 文件。如果不想安装也可以跳过。 安装后可以在 Visual Studio 内直接使用 EGE 库,为了方便,建议安装。

  右键 bat 文件,选择 以管理员身份运行

在这里插入图片描述

  之后会弹出命令行提示窗口,显示文件复制操作完成 (Done),查看输出内容就可以看到 已经将 EGE 库文件复制到了 Visual Studio内,这时 Visual Studio 就已经配置好了,按任意键继续或者关闭该窗口。

在这里插入图片描述

  再次执行右键菜单中的 EGE: Build and run current file 操作来编译并运行当前文件。

在这里插入图片描述

  这时底下会输出编译信息,编译完成后,程序将自动运行。

在这里插入图片描述

6.1.3.2 项目编译与运行

  上面是编译和运行单文件,下面来讲解如何在项目中进行配置。

6.1.3.2.1 新建项目

  新建一个 空文件夹 作为项目文件夹。

在这里插入图片描述

  在 Visual Studio Code 中将此文件夹打开。

在这里插入图片描述

  打开后,在左边资源管理器视图里,可以看到大写的项目文件名,说明此时已经成功地将项目文件夹打开。

在这里插入图片描述
  接下来在项目文件夹内新建一个源文件,填入文件名,这里是 main.cpp

在这里插入图片描述

  将测试代码复制,粘贴到 main.cpp 源文件中

在这里插入图片描述

#include <graphics.h>

int main()
{
    initgraph(640, 480);
    circle(200, 200, 200);

    getch();
    closegraph();

    return 0;
}
6.1.3.2.2 在项目中配置

  在代码编辑区域右键,在右键菜单中选择 EGE:Setup with this project,开始进行配置。

在这里插入图片描述
  这时底下输出窗口会输出配置信息。在左边的资源管理器视图中可以看到,自动生成了 CMakeLists.txt 文件,同时多了 .vscode 和 ege 文件夹。.vscode 文件夹内是 Visual Studio Code 配置文件,ege 文件夹内则是 ege库文件。
  现在项目已经配置完成,接下来就可以编写代码,然后调试运行项目了。

  项目默认编译位于项目根目录下的所有 cpp 源文件

在这里插入图片描述

6.1.3.2.3 调试运行

  点击活动栏中的 运行与调试 按钮,切换到 运行与调试 视图。在下拉列表中,有 Launch DebugLaunch Release 这两个启动配置可供选择。选择其中一个(随时可以切换),然后点击 开始调试 按钮,程序将被调试运行。

配置类型说明
Launch Debug编译出的可执行文件包含调试信息,方便调试,但一般只做最小的优化,程序运行速度慢
Launch Release编译出的可执行文件不包含调试信息,对程序进行进一步优化,以提高程序运行效率和性能

在这里插入图片描述
  首次编译需要较长时间,耐心等待。编译完成后,从底下的终端输出信息里,我们可以看到编译成功后生成的 exe 可执行文件的路径。

在这里插入图片描述
  最后,程序运行,弹出图形窗口,调试运行到这里就完成了。

在这里插入图片描述
调试的其它快捷操作

  可以在底下状态栏处快速进行 选择并启动 相应的调试配置。

在这里插入图片描述
  也可以点击顶部 命令中心 输入框,在列表中找到 开始调试 debug,选择所需的调试配置进行调试。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


调试运行与非调试运行

   Visual Studio Code 的运行模式分为两种: 启动调试 (F5)以非调试模式运行 (Ctrl + F5)
   ① 如果想对代码进行调试,需要选择 Launch Debug 启动配置,然后 按 F5 进行调试。
   ② 如果不调试,建议切换到 Launch Release 启动配置,然后按 Ctrl + F5 选择以非调试模式运行

在这里插入图片描述

6.1.3.2.4 运行任务

   在使用 ege 扩展对项目进行配置后,项目内会生成配置文件。其中, tasks.json 文件包含了多个由 EGE 扩展自动生成的、与项目构建运行相关的任务。

  为了安全起见,如果项目内原本就存在这些配置文件,那么 ege 扩展将不会覆盖这些文件。因此,如果要配置 ege 项目,应选择空文件夹或者先将这些配置文件删除。

  点击上方的输入框,或者按 Ctrl +Shift + P 调出命令面板

在这里插入图片描述
运行任务的方式

  方式一: 快捷键 Ctrl+Shift+B 运行任务。

  方式二: 在列表中找到 运行任务 task 选项,点击后会出现任务列表,选择所需的任务运行即可。

在这里插入图片描述

  方式三: 在命令中心输入框中输入 >Tasks: Run Task(这里会进行模糊搜索,并且有最近使用记录,所以并不需要精确输入),在列表中找到 任务:运行任务,点击。(命令面板也可以通过 Ctrl+Shift+P 快捷键打开)

  如果在输入时,这个命令已经出现在了列表里第一个位置,可直接按回车执行。如果出现在其它位置,可按上下方向键进行选择。

请添加图片描述

项目中配置的任务

  执行运行任务命令后,在下拉列表里 选择要执行的任务,点击即可执行。

在这里插入图片描述

  如下图所示,EGE 扩展自动配置的任务分为 加载构建运行清理 四类,其中构建和运行分为 Debug 和 Release 两种。
  一个项目构建运行的步骤为:加载 → \rightarrow 构建 → \rightarrow 运行,运行当前任务时,会自动调用上一步的任务

在这里插入图片描述

  下图中的实线箭头是指任务执行时会固定执行上一步任务,虚线箭头是指如果上一步的任务已经完成,那么将会跳过上一步的任务,直接执行当前任务。
  所以如果想要运行的话,直接执行 Run Project 任务即可,任务会自动执行前面的加载、构建任务。

在这里插入图片描述

6.1.3.2.5 重新加载

  当修改了 CMakeLists.txt 文件或由于项目配置缓存等原因导致项目构建失败,可以执行 Clean Project 任务。执行这个任务会删除 build 文件夹(里面包含 CMake 项目编译过程中生成的临时文件和可执行文件)。

在这里插入图片描述
在这里插入图片描述

  执行完 Clean Project 任务后,其它 Load, Build, Run 等任务在执行时就会重新加载项目。

6.1.3.3 执行扩展命令

   可在命令中心输入 >ege: 查看 ege 扩展里的命令,然后继续输入命令名称或者按上下方向键选择所需要命令执行。

在这里插入图片描述

   扩展提供了以下命令:

在这里插入图片描述

ege 扩展命令说明
Open cache dir打开扩展缓存目录
Setup in global scope在全局作用域中配置(将 ege 库配置到编译器内)
Cleanup caches清理扩展缓存
Setup with this project配置该项目
Build and run current file构建和运行当前文件
6.1.3.4 扩展设置

  右键扩展,在右键菜单里选择 扩展设置
在这里插入图片描述
  在设置界面中,可以在 ege 提供的选项里进行设置。

在这里插入图片描述

6.2 通过 C/C++ 扩展搭建 EGE 开发环境

  教程中所用 EGE 版本为 20.08,编译器版本(64位):MinGW-w64 GCC 8.1.0 x86_64-posix-seh

6.2.1 安装 MinGW-w64 编译器

  请参考 命令行使用 GCC 编译 章节 预先下载好编译器 并在 编译器中配置 EGE 图形库

内容快速定位

MinGW-w64 编译器安装(SEH 版本)编译器配置 EGE 图形库
(点击跳转至上文)(点击跳转至上文)

   如下图所在,在命令行中输入 gcc --version 命令可以查询 GCC 编译器版本,where gcc 则可以列出 GCC 编译器位置(需要在环境变量中配置)

在这里插入图片描述

6.2.2 C/C++ 扩展安装

   在 Visual Studio Code 应用商店中搜索 C/C++,找到 C/C++ 插件进行安装。

在这里插入图片描述

6.2.3 测试 C++ Hello World 程序

https://code.visualstudio.com/docs/cpp/config-mingw

  建议先阅读 Visual Studio Code 官网的 C++ 配置文档(GCC on Windows),了解配置文件中各个配置选项的含义。

在这里插入图片描述

6.2.3.1 新建项目

  新建一个 空文件夹 作为项目文件夹。

  路径上最好不要有中文,否则容易出现各种错误(如无法调试等)。

在这里插入图片描述

  在 Visual Studio Code 中将此文件夹打开。

在这里插入图片描述

  打开后,在左边资源管理器视图里,可以看到大写的项目文件名,说明此时已经成功地将项目文件夹打开。

在这里插入图片描述
  接下来在项目文件夹内新建一个源文件,填入文件名,这里是 main.cpp(文件名一定是以 .cpp 为后缀,而不是 .c)

在这里插入图片描述
  创建 main.cpp 后,文件会自动在代码编辑区域打开,将下面的 C++ 测试代码 复制粘贴到 main.cpp 文件内。

#include <stdio.h>

int main()
{
    printf("Hello, world!\n");

    // 如果下面这两行报错,检查一下是否正确使用了 g++ (C++ 编译器) 来编译
    // 如果是 gcc.exe,请改成 g++.exe
    int* a = new int[10];
    delete[] a;

    return 0;
}

在这里插入图片描述

6.2.3.2 自动生成任务

  我们在左边的活动栏处点击 运行和调试 图标,切换到相应界面,点击 运行和调试 按钮,在弹出来的调试器列表中选择 C++ (GDB/LLDB)

在这里插入图片描述
  在上面的最后一步中,会弹出来一个配置列表,这是 Visual Studio Code 搜索到的编译器(将编译器所在的目录添加到环境变量 PATH 中才会检测到)。在列表中,选择我们之前配置好的编译器,选择 C/C++: g++.exe ,注意查看显示的路径跟编译器的安装目录是否一致。

  这里一定是选择 C/C++: g++.exe,而不是 C/C++: gcc.exe

在这里插入图片描述

  在底下的终端窗口中,可以看到输出的 “Hello, world!”,说明已经编译运行成功。

在这里插入图片描述
  如果编译失败,并且弹出了如下所示的对话框,点击 中止 按钮

在这里插入图片描述
  查看下面终端窗口输出的信息,提示错误位置在源文件第 10, 11行, undefined reference to 'operator new[](unsigned long long',那么是在刚才调试时,选择错了调试配置,必须是 g++.exe,而不是 gcc.exe,继续往下看

在这里插入图片描述

  回到资源管理器视图,可以看到多了个 .vscode 文件夹,点击左边三角箭头展开,此文件夹下自动生成了个 tasks.json 文件,点击打开这个文件。

  里面是 C/C++ 扩展自动生成的一个构建任务, 作用是使用 GCC 编译器将活动源文件编译成可执行文件。

  如下图所示,如果 command 属性里填的是 gcc.exe,改成 g++.exe

在这里插入图片描述

  修改后关闭 tasks.json 文件,切换回 main.cpp。在运行和调试视图里,点击 运行和调试 按钮,重新编译运行,终端输出 "Hello, world!" 即可。

在这里插入图片描述

  现在,C++ 开发环境就搭建好了,接下来要修改这个任务,用来编译 EGE 代码。

6.2.3.3 调试运行

  任务已经由 C/C++ 扩展自动生成,后面我们就可以编译运行程序了。
  点击 main.cpp 文件选项卡,把代码编辑界面切换到源文件 main.cpp 上,让其成为 活动文件

在这里插入图片描述
  在运行菜单里,有 启动调试 (F5)以非调试模式运行 (Ctrl + F5) 两个选项,我们可以使用其快捷键,执行命令,这样就能编译运行了。

在这里插入图片描述

  介绍一个快速运行的操作,如下图所示,在右上方我们可以看到一个运行按钮,点击右边的小三角会展开运行命令列表,里面的 调试 C/C++ 文件运行 C/C++ 文件才是 C/C++ 扩展的。设置之后,直接点击这个运行按钮就会执行之前选择的命令。

  不要选择其它选项,其它选项是其它插件提供的,比如图中的 Run Code (Ctrl+Alt+N)就是 Code Runner 扩展的。

在这里插入图片描述
  这样就可以编译运行 C++ 代码了。

6.2.4 配置 EGE 活动文件构建任务

Visual Studio Code Task 配置说明文档

  上面已经能正常编译运行 C++ 代码了,但是还不能编译 EGE 代码。所以接下来要修改上面调试运行时自动生成的任务。

  如果不知道各个配置项是什么含义,可以将鼠标光标移动到配置项名称上方,这样就会显示提示信息。

在这里插入图片描述

  如下图所示,修改三个地方,注意 链接参数 不能出错。label 是任务名称,可以自己命名。detail 是任务的其它详细信息,说明任务是做什么用的,可以自己填。

  里面还添加了两个设置源文件字符集和执行字符集的参数,防止源文件字符串中的中文在运行时出现乱码的情况。

  • -finput-charset 用于指定源文件字符集,Visual Studio Code 文件所使用的编码默认是 UTF-8。
  • -fexec-charset 用于指定执行字符集, 在没有主动更改的情况下,Windows 中文系统默认使用 GB2312 字符集(代码页 936)。
"-lgraphics64",
"-luuid",
"-lmsimg32",
"-lgdi32",
"-limm32",
"-lole32",
"-loleaut32",
"-lwinmm",
"-lgdiplus",

在这里插入图片描述

  下面给出具体的配置内容,以供参考:

{
    // 查看 Visual Studio Code 官方配置说明文档
    // https://code.visualstudio.com/docs/editor/tasks
    "tasks": [
        {
            // 活动文件构建任务
            "type": "cppbuild",
            "label": "EGE Build Active File",
            "command": "D:\\mingw-w64\\mingw64\\bin\\g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-lgraphics64",
                "-luuid",
                "-lmsimg32",
                "-lgdi32",
                "-limm32",
                "-lole32",
                "-loleaut32",
                "-lwinmm",
                "-lgdiplus",
                "-finput-charset=utf-8",	// 源文件字符集 (Visual Studio Code 中默认是 UTF-8)
                "-fexec-charset=gb2312",	// 执行字符集 (中文系统代码页默认是 936,对应字符集 GB2312)
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "EGE 编译活动文件"
        }
    ],
    "version": "2.0.0"
}

  接下来将 EGE 测试例程复制粘贴到 main.cpp 源文件,然后按 F5 运行,出现如下图所示的图形窗口,说明配置成功。

#include <graphics.h>

int main()
{
    initgraph(640, 480);

    setcolor(EGERGB(0xFF, 0x0, 0x0));
    setbkcolor(WHITE);

    circle(320, 240, 100);
    
    getch();
    closegraph();
    
    return 0;
}

在这里插入图片描述

6.2.5 配置 EGE 项目构建任务

  上面配置的任务只能用来编译单个源文件,而一个项目中通常会包含多个源文件,所以还需要对 tasks.json 进行修改,往里添加能编译多个源文件的任务。
  如下图所示,将 tasks.json 中编译单文件的任务复制一份(两个任务之间记得加逗号分隔)

在这里插入图片描述
  修改说明如下:

在这里插入图片描述

这里给出修改后的 tasks.json 文件以供参考:

{
    // 查看 Visual Studio Code 官方配置说明文档
    // https://code.visualstudio.com/docs/editor/tasks
    "tasks": [
        {
            // 活动文件构建任务
            "type": "cppbuild",
            "label": "EGE Build Active File",
            "command": "D:\\mingw-w64\\mingw64\\bin\\g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-lgraphics64",
                "-luuid",
                "-lmsimg32",
                "-lgdi32",
                "-limm32",
                "-lole32",
                "-loleaut32",
                "-lwinmm",
                "-lgdiplus",
                "-finput-charset=utf-8",
                "-fexec-charset=gb2312",
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "EGE 构建活动文件"
        },
        {
            // 项目构建任务
            "type": "cppbuild",
            "label": "EGE Build Project",                               // 任务名称
            "command": "D:\\mingw-w64\\mingw64\\bin\\g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",

                "${workspaceFolder}\\*.cpp",                            // 编译项目根目录下的所有cpp文件
                // 如果编译器不支持通配符 *,需要自己添加所有要编译的 cpp 源文件,比如这里添加 main.cpp, source1.cpp, source2.cpp
                //"${workspaceFolder}\\main.cpp",
                //"${workspaceFolder}\\source1.cpp",
                //"${workspaceFolder}\\source2.cpp",

                "-o",
                "${workspaceFolder}\\${workspaceFolderBasename}.exe",   // 将可执行文件生成在项目目录下,并以项目文件夹命名
                "-lgraphics64",
                "-luuid",
                "-lmsimg32",
                "-lgdi32",
                "-limm32",
                "-lole32",
                "-loleaut32",
                "-lwinmm",
                "-lgdiplus",
                "-finput-charset=utf-8",
                "-fexec-charset=gb2312",
            ],
            "options": {
                "cwd": "${workspaceFolder}"                             // 以项目目录作为当前工作目录
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "EGE 构建项目"                                    // 任务详细信息
        }
    ],
    "version": "2.0.0"
}

  按下 Ctrl + F5F5 运行。因为此时 tasks.json 中有两个构建任务,所以会弹出列表让你选择,可以根据列出的任务名,选择其中的项目构建任务 EGE Build Project

在这里插入图片描述

  执行任务后弹出图形窗口,左边资源管理器也可以看到以项目文件夹名称命名的可执行文件,配置成功。

在这里插入图片描述

6.2.6 自定义运行和调试

Visual Studio Code 调试配置文档
Visual Studio Code launch.json 编写参考文档

  上面已经为项目创建了构建任务,在只创建一个构建任务的情况下,Visual Studio Code 会自动选择这个任务来进行构建,然后使用对应的调试器来启动调试。但如果是在创建了多个构建任务的情况下,每次调试运行时都会弹出一个输入框,让用户选择执行哪个构建任务,稍微有点麻烦。

  如下图所示,由于我们没有创建调试配置,因此点击调试时,软件会自动生成一个默认的调试配置,然后调用我们选择的构建任务。

在这里插入图片描述

  这里我们自己创建一个调试配置,在里面指定要执行的任务,这样在调试运行时就不需要再选择了。

6.2.6.1 创建 launch.json 文件

  切换运行和调试视图里,点击 创建 launch.json 文件

在这里插入图片描述

  在弹出的调试器选择列表里,选择 C++ (GDB/LLDB)

在这里插入图片描述
  这样一个空的 launch.json 配置文件就创建好了,下面我们要在里面添加配置。

在这里插入图片描述

6.2.6.2 添加 GDB 启动配置

  在 launch.json 文件中,点击右下角的 添加配置 按钮。

在这里插入图片描述

  或者在运行菜单里选择 添加配置也可以。

在这里插入图片描述
  此时光标会定位[] 括号内,并列出了一个配置列表,在列表里选择 C/C++: (gdb) 启动

在这里插入图片描述
  选择后会生成一个默认的配置,如下图所示。但这个调试配置还不能用,需要在里面添加修改参数。

在这里插入图片描述

6.2.6.3 活动文件调试配置

  参照之前配置的 构建活动文件(EGE Build Active File) 任务,填写 调试运行活动文件 配置。
  如下图所示,这个配置命名为 “调试运行活动文件” (可以自己命名)。

  注意里面的一个路径是填写的调试器路径,所以从任务里复制路径过来时,要将路径里的 g++ 改成 gdb

在这里插入图片描述

  文件内容如下,供参考:

{
	"version": "0.2.0",
	"configurations": [
		{
			"name": "调试运行活动文件",
			"type": "cppdbg",
			"request": "launch",
			"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
			"args": [],
			"stopAtEntry": false,
			"cwd": "${fileDirname}",
			"environment": [],
			"externalConsole": false,
			"MIMode": "gdb",
			"miDebuggerPath": "D:\\mingw-w64\\mingw64\\bin\\gdb.exe",
			"setupCommands": [
				{
					"description": "为 gdb 启用整齐打印",
					"text": "-enable-pretty-printing",
					"ignoreFailures": true
				},
				{
					"description": "将反汇编风格设置为 Intel",
					"text": "-gdb-set disassembly-flavor intel",
					"ignoreFailures": true
				}
			],
			"preLaunchTask": "EGE Build Active File",
		}
	]
}

  这样,一个调试运行单文件的配置就弄好了。下面把编辑界面切换回 main.cpp 源文件,按 F5Ctrl+F5 运行。出现如下所示的图形窗口即为配置成功。

在这里插入图片描述

6.2.6.4 项目调试配置

  上面已经添加了一个用于调试运行活动文件的配置,下面再添加一个调试配置,用于调试运行项目,与之前的 项目构建任务(EGE Build Project) 对应。
  点击右下方的 添加配置 按钮。

在这里插入图片描述
  在配置列表里,选择 C/C++: (gdb) 启动

在这里插入图片描述

  参照之前配置的 构建项目(EGE Build Active File) 任务,填写 调试运行项目 配置。
  如下图所示,这个配置命名为 “调试运行项目” (可以自己命名)。

  注意里面的一个路径是填写的调试器路径,所以从任务里复制路径过来时,要将路径里的 g++ 改成 gdb

在这里插入图片描述
  文件内容如下,供参考:

{
	"version": "0.2.0",
	"configurations": [
		{
			"name": "调试运行项目",
			"type": "cppdbg",
			"request": "launch",
			"program": "${workspaceFolder}\\${workspaceFolderBasename}.exe",
			"args": [],
			"stopAtEntry": false,
			"cwd": "${workspaceFolder}",
			"environment": [],
			"externalConsole": false,
			"MIMode": "gdb",
			"miDebuggerPath": "D:\\mingw-w64\\mingw64\\bin\\gdb.exe",
			"setupCommands": [
				{
					"description": "为 gdb 启用整齐打印",
					"text": "-enable-pretty-printing",
					"ignoreFailures": true
				},
				{
					"description": "将反汇编风格设置为 Intel",
					"text": "-gdb-set disassembly-flavor intel",
					"ignoreFailures": true
				}
			],
			"preLaunchTask": "EGE Build Project",
		},

		{
			"name": "调试运行活动文件",
			"type": "cppdbg",
			"request": "launch",
			"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
			"args": [],
			"stopAtEntry": false,
			"cwd": "${fileDirname}",
			"environment": [],
			"externalConsole": false,
			"MIMode": "gdb",
			"miDebuggerPath": "D:\\mingw-w64\\mingw64\\bin\\gdb.exe",
			"setupCommands": [
				{
					"description": "为 gdb 启用整齐打印",
					"text": "-enable-pretty-printing",
					"ignoreFailures": true
				},
				{
					"description": "将反汇编风格设置为 Intel",
					"text": "-gdb-set disassembly-flavor intel",
					"ignoreFailures": true
				}
			],
			"preLaunchTask": "EGE Build Active File",
		}
	]
}

  此时项目调试配置就弄好了。
  我们切换到 运行与调试 视图,可以看到调试配置里有我们之前配置好的两个配置:调试运行项目调试运行活动文件

在这里插入图片描述
  选择 调试运行项目,然后点击 运行按钮(按 F5Ctrl+F5 快捷键也可以)。

在这里插入图片描述
  弹出图形窗口即为配置成功。

在这里插入图片描述

6.2.6.5 调试配置切换

  上面我们配置了两个 调试配置,当我们按下 F5 (启动调试)Ctrl+F5 (以非调试模式运行) 时,都是启动当前选择的调试配置。
在这里插入图片描述
  上面的两个调试配置说明如下:

调试配置适用场景优势
调试运行活动文件单文件可以快速切换编译文件,方便测试、运行简单代码
调试运行项目项目,多文件适合编译包含多个文件或其它更复杂的项目,固定编译,不受活动文件影响

  在底下的状态栏就显示着当前选择的调试配置(如下图所示,目前选择的是 "调试运行活动文件")。

在这里插入图片描述

  因此我们要根据个人需要切换调试配置,切换调试配置的方式有下面几种:

方式一
  在 运行和调试 视图切换,在列表里选择。

在这里插入图片描述
方式一
  在状态栏切换,点击底下调试配置按钮,会弹出选择列表,选择后会自行启动。

在这里插入图片描述
在这里插入图片描述
方式三
  点击命令中心,选择 开始调试,选择并启动调试配置。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


6.3 通过 Code Runner 扩展搭建 EGE 开发环境

  Code Runner 是一个较多人使用的扩展,可快速运行代码片段或代码文件(适合用来编译单个文件)。

在这里插入图片描述

6.3.1 安装 MinGW-w64 编译器

  请参考 命令行使用 GCC 编译 章节 预先下载好编译器 并在 编译器中配置 EGE 图形库

内容快速定位

MinGW-w64 编译器安装(SEH 版本)编译器配置 EGE 图形库
(点击跳转至上文)(点击跳转至上文)

   如下图所在,在命令行中输入 gcc --version 命令可以查询 GCC 编译器版本,where gcc 则可以列出 GCC 编译器位置(需要在环境变量中配置)

在这里插入图片描述

6.3.2 安装 Code Runner 扩展

  在应用商店搜索 Code Runner,安装 Code Runner 扩展。

在这里插入图片描述

6.3.3 编译运行 C++ Hello World 代码

  在源文件里粘贴上 C++ Hello World 测试代码。

#include <stdio.h>

int main()
{
	printf("Hello, world!\n");
	return 0;
}

  在 .cpp 源文件里右键,在右键菜单里可以看到 Run Code (Ctrl+Alt+N),点击该选项。

在这里插入图片描述
  可以看到底下输出了 “Hello, world!”,C++ 代码运行成功。

在这里插入图片描述

6.3.4 配置 Code Runner

  在Code Runner 扩展上右键,或者点击设置图标。在菜单中选择 扩展设置

在这里插入图片描述

  在配置项中找到 Executor Map 中,点击 在settings.json中编辑

在这里插入图片描述

  然后会定位到 “code-runner.executorMap” 设置项,可以看到里面有各种语言的运行命令,在里面找到 C++ 的对应命令项 "cpp"

在这里插入图片描述
  接下来把原来的命令行用 // 给注释掉,在里面插入链接参数,并做一些修改,以适应源文件名带空格的情况,即 "cpp" 项修改为:

"cpp": "cd $dir && g++ \"$fileName\" -o \"$fileNameWithoutExt\" -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus -fexec-charset=gb2312 && $dir\"$fileNameWithoutExt\"",

  如下图所示:
在这里插入图片描述

  说明一下,上面编译命令中加入的链接参数是如下 9 个:

-lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

  其中加入了一个设置执行字符集的参数,避免源文件字符串中的中文在运行时出现乱码(Windows 中文系统默认使用 GB2312 字符集 (代码页 936)

-fexec-charset=gb2312

  回到代码编辑界面,复制以下的测试代码,粘贴到源文件中。

#include <graphics.h>

int main()
{
    initgraph(640, 480);

    setcolor(EGERGB(0xFF, 0x0, 0x0));
    setbkcolor(WHITE);

    circle(320, 240, 100);
    
    getch();
    closegraph();
    
    return 0;
}

  在源文件右键,选择 Run Code (Ctrl+Alt+N) 运行代码。

在这里插入图片描述
  弹出图形窗口即为配置成功。

在这里插入图片描述

6.3.5 扩展设置

  同样打开 Code Runner 扩展设置。

在这里插入图片描述
  在设置项里找到以下设置,推荐勾选。

在这里插入图片描述
在这里插入图片描述

7. C-Free


  教程所使用的 C-Free 版本为 C-Free 5 (32位)

C-Free 下载

  需要注意的是,C-Free 安装路径里不能带空格,但是它自己安装的时候也会有空格,手动将 C-Free 5 改成 C-Free5, 把空格去掉。

  使用的EGE安装包ege19.01_all

  由于从 20.08 开始, EGE 不再内置 gdiplus 库,所以需要编译器自行携带。而 C-Free 所使用的编译器版本太低,里面没有带有 gdiplus 库,也没找到适配的版本,所以无法使用 EGE 20.08,只能安装 EGE 19.01。

在这里插入图片描述

7.1 头文件和库文件的放置

  主要是将安装包中的头文件和库文件放到 C-Free 所内置正确的位置。

在这里插入图片描述
  将EGE安装包 include 目录中的文件全选(txt文件就不用了),复制粘贴到 C-Free 对应 include 目录中。

  参考路径 E:\C-Free5\mingw\include

在这里插入图片描述

在这里插入图片描述

  1. 将EGE安装包中的 lib 目录下的库文件文件放到 C-Free 中库文件的放置目录
    库文件的选择:选择的是 mingw32 文件夹, 把EGE安装包中 mingw32 目录中的 libgraphics.a文件

  参考路径: E:\C-Free5\mingw\lib

在这里插入图片描述
在这里插入图片描述

7.2 项目的配置

  打开C-Free, 选择 新建工程

在这里插入图片描述

  选择控制台程序, 工程名称随意(这里取ege), 保存位置选个合适的目录,点击确定。

在这里插入图片描述

  选择一个简单的程序(选其它也行), 点击下一步。

在这里插入图片描述

  选择 C++ 语言, 不可选 C 语言。

在这里插入图片描述
  选择一个构建配置(这里选mingw5)

在这里插入图片描述
  这时会打开我们的项目,右边是我们项目中的文件。
在这里插入图片描述
  点击工程->设置
在这里插入图片描述
 7emsp;点击 连接, 在下面参数里复制粘贴上下面这一行

 -lgraphics -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm

(注意到图片里有个-lgdiplus,这里不要加)

在这里插入图片描述

  • 换成Release, 复制粘贴同样的参数, 点击 确定

 -lgraphics -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm

(注意到图片里有个-lgdiplus,这里不要加)

在这里插入图片描述

  • 打开 main.cpp, 复制粘贴上一下代码。
#include <graphics.h>					//包含EGE的头文件

int main()
{
	initgraph(640, 480);				//初始化图形界面
	
	setcolor(EGERGB(0xFF, 0x0, 0x0));	//设置绘画颜色为红色
	
	setbkcolor(WHITE);					//设置背景颜色为白色
	
	circle(320, 240, 100);				//画圆
	
	getch();							//暂停,等待键盘按键

	closegraph();						//关闭图形界面
	
	return 0;
}

在这里插入图片描述

  • 点击 构建->构建, 看下下面有没有错误,没有就点击 运行
    在这里插入图片描述
  • 出来下面的运行结果就说明配置已经完成
    在这里插入图片描述
  • 点击 Debug \ Release 切换按钮,点击构建->重新构建, 运行, 看看结果有什么不同
    在这里插入图片描述
    在这里插入图片描述

避免重复配置的方法
  刚才的项目配置只是针对一个项目的,如果下次新建一个EGE项目,还得重新配置
  如果你经常写EGE程序,最好在 构建 中配置, 这样每次新建一个项目,就会自动为项目进行同样的配置,就免去了重新配置的麻烦。

  • 点击 构建->构建选项
    在这里插入图片描述
  • DebugRelease添加同样的参数, 点击确定

 -lgraphics -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

在这里插入图片描述

  • 这样就可以避免每次新建项目都要重新配置了

如果你不想要后面的控制台窗口,可以关掉

  • 点击 工程->设置, 点击 “一般” 选项卡, 工程类型选择 “GUI”, 点击确定。
    如果你想要显示控制台窗口,则选择 CUI
    在这里插入图片描述
  • 然后点击 构建->重新构建, 然后点击 运行, 就可以看到控制台窗口就关闭了
    在这里插入图片描述
  • 就可以看到控制台窗口不见了
    在这里插入图片描述

7.3 C-Free 出现的问题

一些错误原因请参考 DevC++ 部分。
No such file or directory
显示下方的错误信息,那很有可能是安装路径 带有空格

问题相关解决办法https://jingyan.baidu.com/article/9989c746cc5b0cf648ecfeb1.html
在这里插入图片描述
这时找到安装目录,把路径上的空格都去掉,如下图,为软件自动生成的安装目录,带有空格,请把空格删掉
在这里插入图片描述

8. Eclipse IDE for C/C++

所用Eclipse IDE版本:
Eclipse IDE for C/C++ Developers
Version: 2020-03 (4.15.0)

  附Eclipse IDE 下载链接:https://www.eclipse.org/downloads/

  安装时选择Eclipse IDE for C/C++ Developers安装即可。

在这里插入图片描述

使用的EGE安装包:ege20.08_all
所使用的编译器:MinGW-w64, TDM-GCC也可

8.1 MinGW-w64 的安装

参考 (4)命令行使用GCC编译 中的 [1] MinGW-w64 的安装

请确认下载的是 x86_64-posit-seh , 而不是x86_64-posit-sjlj

8.2 EGE的安装

参考 (4)命令行使用GCC编译 中的 [2] EGE的安装

8.3 Ecplise IDE 的配置

  打开Ecplise, 显示欢迎页,点击创建一个新C/C++项目(Create a new C/C++ project)

在这里插入图片描述

  选择C++管理构建(C++ Managed Build), 点击Next

在这里插入图片描述
  填写 项目名称(任意取,填ege就行),选择一个空文件夹作为工作空间(最好找个地方新建个workspace目录,然后项目统一放里面), 选择之前安装好的GCC编译器,点击finish

在这里插入图片描述

  新建源文件填写源文件名(任意,但包含main函数的源文件命名main即可,容易区分)点击finish
在这里插入图片描述
在这里插入图片描述

  打开 main.cpp, 复制粘贴上以下代码, 保存文件。

#include <graphics.h>					//包含EGE的头文件

int main()
{
	initgraph(640, 480);				//初始化图形界面
	
	setcolor(EGERGB(0xFF, 0x0, 0x0));	//设置绘画颜色为红色
	
	setbkcolor(WHITE);					//设置背景颜色为白色
	
	circle(320, 240, 100);				//画圆
	
	getch();							//暂停,等待键盘按键

	closegraph();						//关闭图形界面
	
	return 0;
}

在这里插入图片描述

8.3.1 设置 Build 时自动保存文件(首次设置)

  选择 窗口(Window) → \rightarrow 首选项(Preferences)

在这里插入图片描述
  点击 常规(General) → \rightarrow 工作空间(workspace) → \rightarrow 构建(Build), 把 手动构建前自动保存(Save automatically before manual build) 勾选
在这里插入图片描述

8.3.2 添加库

  选择项目(Project) -> 属性(Properties)

在这里插入图片描述
  添加库,一共9个,点击下图的加号即可添加。

在这里插入图片描述

分别添加下面9个库(如果你是构建32位的,把graphics64换成graphics)

graphics64
uuid
msimg32
gdi32
imm32
ole32
oleaut32
winmm
gdiplus

  有两个,Debug 和 Realease,两个都要设置,点击 应用(Apply),然后点击 应用并关闭(Apply and close) 就可以了。

在这里插入图片描述

  点击锤子(构建 build), 或者点击项目(project) -> 构建项目 (Buidl Project)
  如果构建后下面控制台(console) 显示 无错误(0 errors, 0 warnings), 就可以点击运行(Run)

在这里插入图片描述
在这里插入图片描述
  成功配置运行结果。

在这里插入图片描述

  • 主要是添加库,上面那个需要 每次新建一个项目都要重新添加一次 全局设置和导出项目设置我暂时没找到,你们自己搜搜。



9. CLion

9.1 配置 C++ 环境

(如果之前配置好了,就不用看配置 C++ 环境这部分了,目标是能编译运行 C++ 的 Hello world 程序)

9.1.1 编译器

  Clion中没有自带编译器,需要自行下载编译器,安装后设置一下编译器路径即可。
  CLion安装时会自动出现相关配置界面要求填入编译器安装目录,如果跳过,可以按如下操作进行设置。

  ① 点击 “File->Settings…” 进入设置界面。

在这里插入图片描述

  ② 在 “Build,Exection,Deployment” -> “Toolchains” 中设置一下 Environment(编译器安装目录)

对于有多个编译器的,可以点击列表里的编译器,然后点上下箭头将其上移下移,第一个即为默认编译器。

在这里插入图片描述
  对于安装了多个编译器的,可以在 Toolchain 里设置一下具体使用的编译器,原设置是使用默认编译器。

在这里插入图片描述

9.1.2 新建C++项目

  点击欢迎页New Project 或者 菜单栏 “File” 下拉菜单中的 “New Project” 都可以

在这里插入图片描述

在这里插入图片描述
  在弹出的New Project 窗口中,选择 “C++ Executable”,设置一下新建项目的位置,文件夹名也将是新项目的名字。

在这里插入图片描述
新建好的项目如下图所示,会自动创建一个Hello world程序。

在这里插入图片描述

点击工具栏上的运行按钮,运行程序。

在这里插入图片描述
下面运行栏中出现 “Hello, World!” 即为成功。
在这里插入图片描述

9.2 CLion项目中的EGE配置

  CLion是用cmake来做项目构建的,配置需要修改里面的 CMakeLists.txt 文件。

9.2.1 解压ege安装包

  将ege安装包解压到一个合适的位置,最好不要乱放。
  (如下图,在E盘根目录中新建了ege文件夹,ege解压到其中。)
在这里插入图片描述

9.2.2 CMakeLists.txt文件

  在项目视图中,可以 main.cpp 旁边看到有一个CMakeLists.txt文件。
在这里插入图片描述
CMakeLists.txt 初始内容如下(untitled2为项目名)
在这里插入图片描述

9.2.3 配置CMakeLists.txt文件

  配置内容如下图所示:(图后有说明,这里为GCC编译器的配置) (untitled为创建时自动生成的项目名,可自行修改)

在这里插入图片描述

需要注意安装包中的两个路径 (配置文件中的路径根据个人电脑的安装包实际目录修改,这里为我个人的安装包目录)
在这里插入图片描述
在这里插入图片描述

CMakeLists.txt 内容如下(GCC)
cmake_minimum_required(VERSION 3.15)
project(untitled)

set(CMAKE_CXX_STANDARD 14)
set(EGE_INC_DIR E:/ege/EGE20.08/include)
set(EGE_LINK_DIR E:/ege/EGE20.08/lib/mingw64)

include_directories(${EGE_INC_DIR})
link_directories(${EGE_LINK_DIR})

add_executable(untitled main.cpp)

target_link_libraries(untitled libgraphics64.a
        libgdi32.a libimm32.a libmsimg32.a libole32.a
        liboleaut32.a libwinmm.a libuuid.a libgdiplus.a)
CMakeLists.txt 内容如下(MSVC)

  如果你安装有VS,想使用VS里的MSVC编译器,则target_link_libraries里只需添加 graphics.libgraphics64.lib即可。(需要注意graphics.lib或graphics64.lib实际所在目录)

cmake_minimum_required(VERSION 3.20)
project(untitled)

set(CMAKE_CXX_STANDARD 14)
set(EGE_INC_DIR E:/ege/EGE20.08/include)			#设置EGE_INC_DIREGE头文件目录
set(EGE_LINK_DIR E:/ege/EGE20.08/lib/vs2019/x64)	#设置EGE_LINK_DIREGE库目录

include_directories(${EGE_INC_DIR})					#添加 EGE_INC_DIR 所指定的目录为包含目录
link_directories(${EGE_LINK_DIR})					#添加 EGE_LINK_DIR 所指定的目录为链接目录

add_executable(untitled main.cpp)

target_link_libraries(untitled graphics64.lib)	#链接EGE
9.2.4 CMakeLists.txt的配置说明

下面是对上面 CMakeLists.txt 配置内容的一个说明

9.2.4.1 添加ege的include目录和lib目录

  这里先定义两个路径参数 EGE_INC_DIREGE_LINK_DIR,表示上面ege库的路径 (实际路径需要自己到文件管理器中自行查看确定) ,方便引用。
  lib 使用lib/mingw64 中的库文件。

	set(EGE_INC_DIR E:/ege/EGE20.08/include)
	set(EGE_LINK_DIR E:/ege/EGE20.08/lib/mingw64)

  使用 include_directories 添加ege的include目录

	include_directories(${EGE_INC_DIR})

  使用 link_directories 添加ege的lib目录

	link_directories(${EGE_LINK_DIR})
9.2.4.2 添加ege所需要链接的库

在GCC中 ege 需要链接的库如下:

libgraphics64.a
libgdi32.a
libimm32.a
libmsimg32.a
libole32.a
liboleaut32.a
libwinmm.a
libuuid.a
libgdiplus.a

在MSVC中 ege 需要链接的库如下:

graphics64.lib

add_executable 后面添加target_link_libraries,然后加入以上库即可。
GCC

target_link_libraries(untitled libgraphics64.a
        libgdi32.a libimm32.a libmsimg32.a libole32.a
        liboleaut32.a libwinmm.a libuuid.a libgdiplus.a)

MSVC

target_link_libraries(untitled graphics64.lib)

9.3 运行测试

修改 main.cpp内容为如下测试代码:

#include <graphics.h>					//包含EGE的头文件

int main()
{
	initgraph(640, 480);				//初始化图形界面
	
	setcolor(EGERGB(0xFF, 0x0, 0x0));	//设置绘画颜色为红色
	
	setbkcolor(WHITE);					//设置背景颜色为白色
	
	circle(320, 240, 100);				//画圆
	
	getch();							//暂停,等待键盘按键

	closegraph();						//关闭图形界面
	
	return 0;
}

点击运行按钮,出现如下图形即可。
在这里插入图片描述

9.4 其它配置

如果不需要控制台,可以加入编译参数 -mwindows

set(CMAKE_CXX_FLAGS -mwindows)

在这里插入图片描述




EGE专栏: EGE专栏
下一篇:(一)EGE介绍

  • 295
    点赞
  • 670
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 90
    评论
您好!要在 Code::Blocks 20.03 中配置 ege 图形库,您可以按照以下步骤进行操作: 1. 首先,确保您已经安装了 Code::Blocks 20.03。如果尚未安装,请先下载和安装。 2. 接下来,下载 ege 图形库的最新版本。您可以在 CSDN 上搜索并下载 ege 图形库。 3. 下载完成后,将解压后的 ege 文件夹放置在一个您喜欢的位置。 4. 打开 Code::Blocks,创建一个新项目或打开现有项目。 5. 在 Code::Blocks 的菜单栏中选择 "Settings"(设置)> "Compiler..."(编译器)。 6. 在 "Selected compiler"(选择编译器)下拉菜单中,选择您正在使用的编译器。 7. 在 "Selected compiler"(选择编译器)选项卡中,点击 "Linker settings"(链接器设置)。 8. 在 "Other linker options"(其他链接器选项)文本框中添加以下命令:-lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32 9. 点击 "OK" 保存更改,并关闭设置窗口。 10. 接下来,在 Code::Blocks 的菜单栏中选择 "Project"(项目)> "Build options..."(构建选项)。 11. 在 "Selected project"(选择项目)选项卡中,选择您正在使用的编译器。 12. 在 "Compiler settings"(编译器设置)选项卡中,点击 "Other options"(其他选项)。 13. 在 "Other options"(其他选项)文本框中添加以下命令:-lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32 14. 点击 "OK" 保存更改,并关闭构建选项窗口。 现在,您应该已经成功配置了 ege 图形库。您可以尝试编写一个简单的程序来测试它是否正常工作。例如: ```cpp #include <graphics.h> int main() { initgraph(); // 初始化图形模式 circle(320, 240, 100); // 绘制一个圆形 getch(); // 等待用户按键 closegraph(); // 关闭图形模式 return 0; } ``` 希望这可以帮助到您!如果您有任何其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 90
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

依稀_yixy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值