(二)EGE安装与配置

EGE专栏: EGE专栏
上一篇:(一)EGE入门教程
下一篇:(三)EGE基础教程 上篇

安装讲解包含以下IDE

  • Visual Studio
  • CodeBlocks
  • DevC++
  • VS Code
  • Eclipse IDE for C/C++
  • C-Free

以及命令行GCC的编译方法
其中VSVS2017作安装讲解,其它版本自己参照来安装

如果安装失败,可以进EGE官方群1060223135询问
群问题:ege是什么? 图形库

  对照教程配置一次后失败,或者1小时内没有成功,直接加群询问,不要在安装上浪费时间。
  不成功是因为有些基础的知识没掌握,没法发现错误,这种情况下直接加群询问即可。有些人竟然会用一晚上甚至几天的时间来安装,最后没弄出来才加群询问。这浪费了几天时间不值得啊,安装本来就十几二十几分钟的事情,别人帮你安装,你不会都行,安装这件事不需要学,现在主要是因为自动安装程序没有编写出来所以才需要手动安装。
  把时间花在EGE库的使用学习上,而不是浪费在安装这件事情上。

注意带上错误信息截图, 并说明自己用的什么编译器,按照哪个教程配置,配置到了哪一步。
配置出错,一般是文件放置的目录不对,链接参数写错。注意主动展示这三个配置信息 (头文件,库文件,链接参数)

在这里插入图片描述

文章最后编辑时间:2020年11月1日11:11:12

EGE图形库的安装

  参考自EGE官网 安装&配置https://xege.org/beginner-lesson-1.html

EGE20.08新版发布啦

在这里插入图片描述

安装配置的变化

  由于新版有点小改动,所以在安装配置方面,20.08版本和19.01版本有点不同,列举如下:

  • 用于VS的库文件名去掉了VS版本号
    如:原来用于VS2019graphics1964.lib库文件 改为 graphics64.lib,去掉了19
    左为 20.08 版本,右为19.01版本
    在这里插入图片描述 在这里插入图片描述
  • EGE20.08 直接适配的IDE增多,根据自己安装的写代码软件选择对应的安装包
    在这里插入图片描述
  • 新版之前安装过旧版,只需要复制对应的文件,在安装目录中国进行替换即可
  • 20.08版本去掉了内置 gdiplus,所有链接参数必须带上 -lgdiplus,或者添加gdiplus.a 到链接库目录里面。(之前 19.01版本 已经内置 gdiplus,可加可不加。)

不要再安装19.01版本了,谢谢

GCC编译器的链接参数

这里方便参考
64位

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

32位

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

1. 下载

EGE 20.08

EGE20.08中只有一个 ege20.08_all 安装包,里面已包含所直接支持的IDE
在这里插入图片描述

下载链接

(1) EGE官网 站内下载

官网下载地址:https://xege.org/install_and_config
在这里插入图片描述

(2) EGE官网 百度网盘下载:

https://pan.baidu.com/s/1qWxAgeK#list/path=%2F
在这里插入图片描述

安装包注意事项

先解压安装包,打开安装包内的include目录
如果include文件夹中没有 graphics.h文件
那么可以下载19.01版本的EGE安装包,把graphics.h文件复制进去,这个文件漏了

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

2. 安装

EGE图形库需要根据自己的编译器来进行安装,下面仅对VS2017 、CodeBlocks、DevC++、C-Free、VS Code、Eclipse for C/C++这些较为常用的编译器进行介绍,其余的自行参考类似的

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

安装主要是三个步骤,其实不复杂,篇幅比较长是因为有很多过程截图。
三个步骤:

1. 放置头文件到软件安装目录的include文件夹内。
2. 放置库文件到到软件安装目录的lib文件夹内。
3. 配置链接参数(Visual Studio不需要)

以下是分软件来详细讲解安装过程

(1) Visual Studio

EGE安装包目录与VS目录对应说明

  • VS安装EGE,主要是将安装包中 include 文件夹和 lib文件夹 中的文件,复制到VS安装目录中对应的位置。其中lib 文件夹中有 x64x86 两个文件夹,都有对应的库文件要放置。
  • 下图表示对应关系,左边是VS的目录,右边是EGE安装包目录。将右边 include目录里面的 所有文件 直接复制粘贴到左边include目录中,将右边x64 和 x86中的文件同样复制粘贴到对应文件夹里
    在这里插入图片描述

EGE的安装

[1] VS安装目录的查找

例如 E:\Visual Studio\Microsoft Visual Studio\2017\Community
找不到的可以在VS桌面图标右键选择打开文件所在位置,如下图
在这里插入图片描述

[2] VS的include目录和lib目录的查找

参考路径:Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726

先点击 Community(社区版) 或 Professional(专业版)
在这里插入图片描述

然后找到 VC 目录
VS2017社区版VC目录
在这里插入图片描述
VS2019专业版VC 目录
在这里插入图片描述

再进入下面标红的目录,可以看到有 includelib 这两个文件夹。
在这里插入图片描述

  • include目录中的内容
    在这里插入图片描述
    打开EGE安装包
    将EGE安装包中的include目录中的所有文件,全选,复制粘贴到刚才的VS2017的include目录下
    (那个txt文件就不用复制了)
    如果EGE安装包中没有 graphics.h文件,可以下载19.01版本的EGE安装包,把graphics.h文件复制进去,这个文件漏了
    在这里插入图片描述
    头文件的复制就完成了,现在到复制 lib 文件

找到VS2017安装位置中的lib目录(就在include的旁边)
在这里插入图片描述
(如下图)进lib目录将会看到x64 和x86两个文件夹,x64是64位,x86是32位的
在这里插入图片描述

[4] lib库文件的复制

EGE安装包中找到 lib 文件夹,将里面x64文件夹和x86文件夹内的lib文件复制粘贴VS2017 lib目录的对应位置
x64和x86的lib文件是不同的,需要放到对应的文件中,不然链接时就找不到lib文件了。
graphics.lib是x86文件夹中的,也就是32位的, graphics64.lib就是64位的。

EGE安装包 中,根据自己的VS版本进入对应的文件夹
在这里插入图片描述
可以里面看到有x86和x64两个文件夹
在这里插入图片描述
点开来看,里面都各自有一个lib库文件,x86里面是32位的,x64里面是64位的
在这里插入图片描述
在这里插入图片描述
把上面两个文件,分别复制VSlib目录对应的x64x86目录就行了。
在这里插入图片描述

安装测试

新建工程
  • 用 Visual Studio 新建一个项目(空项目

如果不知道怎么用Visual Studio新建项目,可以查看以下教程
VS2017创建新项目
VS2019创建新项目

其它版本自行查找教程,创建空项目
在这里插入图片描述

  • 新建一个.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;
}

如果运行后能看到下图就说明已经安装好了
在这里插入图片描述

VS2019去掉控制台

如果VS2019总是跳出控制台,需要设置一下在项目属性中设置一下子系统, 如果原先是控制台,那么设置成未设置
在这里插入图片描述
在这里插入图片描述

(2) Codeblocks

Codeblocks下载链接(更新到20.03版了)

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

在这里插入图片描述

如果安装了旧版本后,再下载安装20.03版本

因为CodeBlocks似乎是用的统一的配置文件,所以如果你之前已经安装过旧版本,安装新版本后,配置可能会造成冲突,需要自己修改一下。

打开编译设置
在这里插入图片描述
如果编译器安装路径没有设置正确,自己设置到编译器安装路径
在这里插入图片描述
打开调试器设置
在这里插入图片描述
设置一下gdb.exe的路径,否则调试可能出错
在这里插入图片描述

注意了,20.03版本64位的,而17.12版本32位的,因此一个需要64位库,一个需要32位

  • 安装说明所用codeblocks版本: 版本17.12 32位

查看CodeBlocks版本信息
工具栏 Help --> About
在这里插入图片描述
在这里插入图片描述

步骤
①找到Codeblocks的安装目录桌面的快捷方式右键选择打开文件所在位置即可找到

  • 我的安装目录 E:\codeblocks\codeblocks-17.12\CodeBlocks
    在这里插入图片描述
    可以看到有个MinGW 文件夹
    如果没有看到MinGW文件夹,那说明你安装的是不自带MinGW的CodeBlocks,编译器在其它地方
    打开CodeBlocks, 选择设置(Settings) -> 编译器(Compiler)
    在这里插入图片描述
    然后点击一下选项卡 可执行工具集(Toolchain executables),就能看到MinGW文件夹在哪
    在这里插入图片描述

  • 进入MinGW文件夹,找到里面的includelib 文件夹
    (下面这个是17.12版本要放的地方, 20.03版本放的是另外的位置)
    在这里插入图片描述

打开EGE安装包文件ege20.08_all, 看到有include 和 lib
在这里插入图片描述

头文件的放置

  • 这时我们把EGE安装包include目录中的文件复制,就是以下红圈中的三个,
    在这里插入图片描述
  • 然后粘贴到Codeblocks的include文件夹中
    注意啦,是复制EGE安装包中上图红圈中的三个,放到 安装目录的include目录里面,而不是复制整个include文件夹

以下是Codeblocks中 include文件夹的参考路径:
CodeBlocks17.12 (32位)(下面有目录截图)
E:\CodeBlocks\MinGW\include

CodeBlocks20.03 (64位)(下面有目录截图)
E:\codeblocks\codeblocks-20.03\CodeBlocks\MinGW\x86_64-w64-mingw32\include

下面是目录位置截图
CodeBlocks17.12include目录
在这里插入图片描述
CodeBlocks20.03include目录
在这里插入图片描述

lib文件的放置

进入 lib 文件夹
在这里插入图片描述

根据自己 CodeBlocks 的版本选择进入对应的文件夹
在这里插入图片描述

  • 将里面的 .a库文件,复制粘贴到 CodeBlocks安装目录中lib目录中。
    CodeBlocks 20.03使用 libgraphics64.a(64位)
    其它版本使用libgraphics.a(32位)

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

  • 复制粘贴到Codeblocks对应的lib目录中

参考路径:
CodeBlocks17.12
E:\CodeBlocks\MinGW\lib

CodeBlocks20.03
E:\codeblocks\codeblocks-20.03\CodeBlocks\MinGW\x86_64-w64-mingw32\lib

下面是目录位置截图
CodeBlocks17.12lib目录
在这里插入图片描述
CodeBlocks20.03lib目录
在这里插入图片描述

测试

创建工程
  • 新建工程
    在这里插入图片描述
  • 选择空工程 (Empty project),点击 Go
    在这里插入图片描述
  • 选择Next
    在这里插入图片描述
  • 填写工程名(Project title),其它默认,也可以修改工程目录
    在这里插入图片描述
  • 选择编译器 GNU GCC Compiler
  • 勾选Debug, Release
  • finish
    在这里插入图片描述
链接参数配置
  • 新建好后,现在设置工程, 配置链接参数。
    选择 Project -> Build options…
    在这里插入图片描述

  • 看到左边有Debug 和 Release, 如果两种都要编译,请两个都要设置,现在设置Debug
    点击左边的Debug

  • (左边有三个可以选,Debug /Release和工程, 这三个可以分别配置成不同的设置, 这里我们先配置Debug, 然后复制到另外两个就行)
    在这里插入图片描述

  • 选择Linker option, 点击Add
    在这里插入图片描述

  • 弹出文件选择框,要开始添加链接库了
    在这里插入图片描述
    添加链接库有两种方式,一种是直接输入链接库名, 另一种是浏览目录,在lib目录中多选。前一种比较方便。

将下面的文本复制粘贴到输入框中,点击OK,注意,64位版本和32位版本不同

20.03版本是64位 的,输入:

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

17.12版本是32位 的,输入:

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

在这里插入图片描述
这样就添加好了
17.12版本(32位)
在这里插入图片描述

20.03版本(64位)
在这里插入图片描述

鼠标左键点击拖动,框选全部的库,然后点击 "Copy selected to…"
在这里插入图片描述
勾选全部配置,点击OK即可,这样就配置好了
在这里插入图片描述

再点击OK确认修改
在这里插入图片描述

  • 链接库配置已经完成,以后每次新建个工程,都要重新设置一次链接库(后面有方法解决)

  • 点击左上角新建文件图标,也可以从File -> new->empty file新建
    在这里插入图片描述

在这里插入图片描述

  • 改文件名为 main.cpp, 一定要是.cpp后缀, 因为EGE是C++图形库,用.c文件是会报错的
    在这里插入图片描述
  • 选择OK
    在这里插入图片描述
  • 输入测试代码
    如果CodeBlocks不能自动补全, 那么需要在前面写命名空间
    可添加 using namespace ege;即下面的注释
#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;
}
  • 选择Debug
    在这里插入图片描述

  • 选择Build -> Build
    在这里插入图片描述

  • 编译链接没有出错
    在这里插入图片描述

  • 点击Build -> Run( 工具栏上也有)
    *在这里插入图片描述在这里插入图片描述

  • 运行成功, 出现了两个框,黑色的是我们最常见的控制台窗口,白色的则是我们的图形窗口
    如果已经按照教程配置,但是仍然没能正确运行。可以试着下载上面链接中的最新的5.11版本DevC++,重新安装
    在这里插入图片描述

  • 同时出现两个框框很丑,要想关掉黑色的控制台窗口怎么办呢?
    选择Project -> Properties
    在这里插入图片描述

  • 点击 Build targets,把上面的 Type 改为 GUI application ,而不是 Console application, 点击OK

在这里插入图片描述

  • 选择 Build -> Rebuild, 然后选择Build -> Run 运行(工具栏也有,直接点就行)
    在这里插入图片描述
  • 可以看到控制台窗口已经没了
  • 直接双击运行生成的exe文件也是没有控制台窗口的
    在这里插入图片描述
  • Codeblocks已经配置完成
  • 但是这样的话每次新建工程都要重新配置链接库
  • 可以保存为模板,下次新建时选择模板
    在这里插入图片描述

(3) DevC++

小熊猫Dev-C++

这里推荐一款由高校老师开发的一款Dev-C++,内置EGE,打开即可使用,免去安装EGE的烦恼,并且为DevC++增加了不少强大的实用功能。

https://royqh.net/devcpp/

正常Dev-C++的安装EGE步骤

安装步骤

  • 先在DevC++桌面图标右键,选择打开文件所在的位置
    在这里插入图片描述
    然后就进入到了DevC++所在的安装目录
    在这里插入图片描述

复制头文件和库文件

目的是将安装包中的EGE头文件和 lib 库文件放到DevC++安装目录中对应的位置

1. 复制头文件

将EGE安装包 include 目录中的文件全选(txt文件就不用了),复制粘贴到 DevC++对应include目录
参考路径: D:\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include
在这里插入图片描述
DevC++安装目录中对应的include目录,如下图。
在这里插入图片描述

2. 复制库文件

链接库文件分32位的和64位的,末尾带64的是64位的
在这里插入图片描述

(1) 将EGE安装包中的64位 链接库文件(libgrahipcs64.a), 复制粘贴到DevC++中对应的位置
参考路径: D:\Dev-cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2
在这里插入图片描述
libgraphics64.a 放置的目录
在这里插入图片描述
(2) 将EGE安装包中的32位 链接库文件(libgrahipcs.a), 复制粘贴到DevC++中对应的位置
参考路径:D:\Dev-cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\32
在这里插入图片描述
libgraphics.a 放置的目录
在这里插入图片描述
在这里插入图片描述
好了,头文件和库文件就已经完成了

新建工程

  • 现在要使用DecV++新建工程
    首先打开DevC++,点击 File–> New–>Project…, 新建工程
    在这里插入图片描述
    新建一个空项目(Empty Project),项目名字随意(这里就直接用EGE了),选择 C++ Project(默认), 点击 OK
    在这里插入图片描述
    然后需要选择DevC++工程保存的目录, 选好位置后,新建一个目录(和刚才取的项目名相同,方便管理, 这里就用EGE了), 点击打开,然后点击 保存,项目就建好了。
    在这里插入图片描述
    可以看到左边项目下,自动帮我们新建了一个文件
    在这里插入图片描述
    然后我们点击工具栏上的 保存图标, 文件命名为 "main.cpp"
    在这里插入图片描述

编译参数配置

  • 接下来要对项目进行配置
    点击 工具(Tools), 选择 编译选项(Compiler Option…)
    在这里插入图片描述

配置的编译器分为32位和64位 的,两个需要链接不同的库,所以参数有所不同
在这里插入图片描述

下面配置64位的
选择 64位的,将最下面红框标注的链接命令改为下面这句(将下面这句复制粘贴进去好)

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

三个64位的都要设置一遍
在这里插入图片描述
下面配置32位
链接命令改为(32位的第一个链接命令是 -lgraphics, 而不是-lgraphics64,除了这个,和64位的没啥区别)

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

三个32位的都要设置

在这里插入图片描述

6个都修改完后,点击 OK 就行,这样就已经全部配置完成了。

在有些别的DevC++的EGE安装教程里,链接命令没有 -lwinmm的,这样就用不了EGE里面用来播放音乐的 MUSIC类。如果你们编译参数里面没有,请在后面多添加一个 -lwinmm,否则使用MUSIC类时会出现 链接错误
在这里插入图片描述

  • 测试EGE
    将下面的测试例程复制粘贴到 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;
}

将编译目标设为64-bit Debug(这个是让你注意一下编译的目标)
如果你是32位的电脑,那就设置为32-bit Debug
在这里插入图片描述
然后点击 编译运行
在这里插入图片描述
如果没有任何报错,出现如下界面,就说明已经安装成功,如果报错,那就回去检查检查哪一步出了问题
在这里插入图片描述

[1]去掉控制台(黑色框框)

可以看到,Devc++是默认显示控制台的,如果想要去掉
点击工具栏 项目(Project) -->编译选项(Prject Option…)
在这里插入图片描述
项目类型(Type) 选择Win32 GUI (图形用户界面程序), 而不是控制台程序(Win32 Console), 点击OK即可
在这里插入图片描述
再点击Rebuild All, 然后点击 编译运行(Compile & Run) 就OK了
在这里插入图片描述
在这里插入图片描述

[2] DevC++配置常出现问题

找不到对应库 can’t find -lgraphics64(或 -lgraphics)
出现这个界面,说明在链接时出现了问题
看到 错误信息"connot find -lgrahphics64’’, 找不到 grahphics64.a 库,看到右上角,配置是32位Release版, 和64位库不对应。
说明链接命令写错了,应该是 -lgraphics
如果配置和库已经对应,那么请检查一下是否将库文件放错了位置
在这里插入图片描述
未定义引用(undefined reference to xxx)
链接错误,没找到对应的函数定义。一看是EGE的库函数
说明链接命令没配置对
看下右上角的编译目标,然后点击 “工具(Tools)–>编译选项(Compiler Option…)”, 找到对应的编译器配置,设置好链接命令
在这里插入图片描述
看下面,都没配置
在这里插入图片描述
把所有编译器配置都设置一遍链接命令
64位 改为

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

32位 改为

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

改完后,Rebuild一下



没有对应文件或目录(No such file or direction)
说明头文件没放对位置
在这里插入图片描述
回去检查一下头文件应该放在哪,实在不清楚的话,可以到编译选项里面看(中间有个gcc的那个)
在这里插入图片描述
打开DeVC++时提示 库 路径不存在

在这里插入图片描述
可以看到,上面显示32位的项目中,库路径MinGW64\lib32不存在
查看一下目录,发现确实没有 lib32 这个文件夹
在这里插入图片描述

刚打开时没有打开项目,那应该是全局设置里面的。
选择 工具 -> 编译选项
在这里插入图片描述
检查一下 所有32位配置 的库路径,写有这个不存在的路径话,点击一下“删除无效”按钮,就会把无效的路径删除,然后点击确认保存就好。

在这里插入图片描述

编译失败后总是弹出Makefile.win重新载入确认框
编译失败,先找到出错原因,修改好后,关掉 Makefile.win 文件
在这里插入图片描述
在这里插入图片描述

当前目录无效
出现如下所示的报错,并且确认已经按教程配置好,那可能是DevC++ 的问题。可以考虑换一个DevC++ ,到下面下载官方版本:
附 DevC++下载链接 : https://sourceforge.net/projects/orwelldevcpp/
EGE官网DevC++下载: https://xege.org/install_and_config
在这里插入图片描述

(4) 命令行使用GCC编译

  • 所用EGE安装包 : ege20.08_all
  • 编译器版本 : MinGW-G64 GCC 8.1.0

需要先安装好GCC, MinGW-W64的,而不是MinGW,这两个是不同的
下面按64位的配置

[1] MinGW-W64 的安装(也可以下载TDM-GCC)

先去下载好最新版的GCC

下面两个选一个下载就行,教程里写的是MinGW-W64 GCC

64位电脑
选择 x86_64-posix-seh 下载
选择 x86_64-posix-seh 下载
选择 x86_64-posix-seh 下载
(不要下x86_64-posix-sjlj)
(重要的事说三遍)
32位电脑 选择 i686-posix-sjlj 下载
在这里插入图片描述

  • 解压
    下载完成后, 找个好点的位置,新建一个目录(别随便乱放),再解压到里面,就可以了。
    比如,我在 D盘根目录 新建了 mingw-w64 文件夹,然后解压到里面。

在这里插入图片描述

  • 加到环境变量
    然后将上面的 bin 目录加到环境变量中, 我的目录是 D:\mingw-w64\mingw64\bin, 自己到目录里面复制即可。
    在这里插入图片描述
    在这里插入图片描述
    这样GCC就安装好了,命令行测试一下,先win + R调出 运行, 输入 cmd,调出命令行。
    在这里插入图片描述
    命令行输入 g++ --version 查看g++版本信息, gdb --version 查看gdb版本信息,能正确输入信息就OK了。
    在这里插入图片描述

[2] EGE的安装

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

参考路径 D:\mingw-w64\mingw64\x86_64-w64-mingw32\include
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
把 EGE安装包中EGE20.08\lib\mingw64 中的库文件复制,
参考路径 D:\mingw-w64\mingw64\x86_64-w64-mingw32\lib
在这里插入图片描述
粘贴到 mingw-w64 的库目录中。
在这里插入图片描述
EGE库安装完成。

[3] 使用命令行编译

  • 新建一个文件夹,作为工作目录(如果有合适的,不新建也行)
    如下图,我在 E:/VSProject/egeCmd 下新建了一个ege文件夹作为工作目录
    工作目录为 E:/VSProject/egeCmd/ege
    在这里插入图片描述
  • 编写程序
    如图,我新建了个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;
}
  • 打开命令行
    win + R调出 运行, 输入cmd,调出命令行。
    在这里插入图片描述
    在这里插入图片描述
  • 跳转到盘
    命令行打开后,当前目录一般是C:\Users\用户
    如果目录所在的盘不同,先跳转到盘,上面我的工作目录是 E:/VSProject/egeCmd/ege, 在 E盘,所以要先跳转
    输入 E:

在这里插入图片描述

  • 跳转到工作目录
    使用 cd 目录命令跳转,工作目录是 E:\VSProject\egeCmd\ege,所以命令是
    cd E:\VSProject\egeCmd\ege
    在这里插入图片描述
  • 编译
    输入 g++ 源文件名 -o 生成文件名.exe 链接命令

ege所需的链接命令 (64位系统):

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

ege所需的链接命令 (32位系统):

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

根据我上面的文件,命令为:
g++ main.cpp -o ege.exe -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus
(源文件名可以使用 *.cpp, 这代表编译目录中所有源文件)

在这里插入图片描述
如果编译链接没有问题,就会生成exe文件,命令中已经将生成文件命名为ege.exe
在这里插入图片描述
如果出现了下面的错误,那么很可能是你下错了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
g++ *.cpp -o ege.exe -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

在这里插入图片描述

编译链接成功,会生成exe文件
在这里插入图片描述
运行程序
命令行输入exe文件名,或者直接双击exe文件,运行程序,这里是 ege.exe

在这里插入图片描述

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

(5) VS Code + GCC

这里有别人发的B站安装视频,如果想看安装视频的可以去看
https://www.bilibili.com/video/av88687187/

  • 所用EGE安装包 : ege20.08_all
  • 编译器版本 : MinGW-G64 GCC 8.1.0

需要先安装好GCC, 是MinGW-W64的,而不是MinGW,这两个是不同的

下面按64位的配置

[1] MinGW-W64 的安装

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

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

[2] EGE的安装

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

[3] VS Code 配置

关于VS Code的配置,可以查看VS Code 官网的配置说明,里面有配置的说明,按着配置说明来即可,过程说得挺清楚

VS Code 官网的配置C++说明
https://code.visualstudio.com/docs/cpp/config-mingw

既然使用 VS Code, 那就默认了解 VS Code 的配置文件写法或者了解配置文件的配置选项含义,这个就不多说了,可以看上面的官网文档,或者自行搜索
在这里插入图片描述
编译C++是需要安装下面这款插件的,扩展里直接搜 C/C++ 即可
在这里插入图片描述
新建项目

  • 新建一个文件,作为工作目录,然后用VS Code 打开
    在这里插入图片描述
  • 添加源文件
    点击新建文件,命名为 文件名.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;
}

设置C/C++插件的配置文件 c_cpp_properties.json

  • 添加 C/C++配置 (c_cpp_properties.json)

  点击 查看->命令面板, 或者 (Shift + Ctrl + P)
在这里插入图片描述

  输入 C/C++ Edit
  选择 C/C++ 编辑配置(UI)
在这里插入图片描述
在这里插入图片描述
  可以看到左边 新建了个 c_cpp_properties.json文件
在这里插入图片描述
然后复制粘贴下面的配置文本
注意:
includePath 中要添加 gcc放置头文件的目录(根据自己的安装位置修改)
xx\mingw64\include
xx\mingw64\x86_64-w64-mingw32\include

compilePath填入 g++.exe的路径

c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}\\**",
                "D:\\mingw-w64\\mingw64\\include",
                "D:\\mingw-w64\\mingw64\\x86_64-w64-mingw32\\include"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "compilerPath": "D:\\MinGW-W64\\mingw64\\bin\\g++.exe",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}



两种配置选择:Code Runner插件运行和VSCode 调试
1.Code Runner插件

在这里插入图片描述
Code Runner插件比较多人用,下载后可以一键编译运行多种编程语言的代码,不需要繁琐的配置,但是似乎不能调试
  插件安装完成之后,会多一个运行按钮,右键菜单中会多一个Run Code选项,这个就是Code Runner插件的。
在这里插入图片描述 在这里插入图片描述
Code Runner插件的配置
  点击 文件->首选项->设置
在这里插入图片描述
用户 设置的扩展中找到 Code Runner 的设置 Run Code Configuration
在这里插入图片描述

然后在 Executor Map 中,点击一下 在settings.json中编辑
在这里插入图片描述
“code-runner.executorMap” 中加入 cpp的运行命令,如下:

"code-runner.executorMap": {
        "cpp": "cd $dir && g++ -static-libgcc -g $fileName -o $fileNameWithoutExt -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus && $fileNameWithoutExt",
},

说明一下,下面这个是EGE所需要的链接命令
 -lgraphics64 -luuid -lmsimg32 -lgdi32 -limm32 -lole32 -loleaut32 -lwinmm -lgdiplus

然后在下面再加入三行:

"code-runner.runInTerminal": true,
"code-runner.ignoreSelection": true,
"code-runner.fileDirectoryAsCwd": true,

  • 已经配置完成了,保存文件,跳转到 main.cpp,右键,选择 Run Code,或者单击右上角的三角形运行按钮,看看是否运行成功。控制台是没有的,已经集成在下面的终端了。
    在这里插入图片描述
    在这里插入图片描述
    出现如下运行结果就OK了。
    在这里插入图片描述
2. VSCode启动任务配置

  除了上面使用 CodeRunner插件运行的方法,下面介绍的是使用 VSCode 自身的配置文件来配置。
  运行方式是菜单 运行->启动调试(F5) (现在还没配置,运行不了)
在这里插入图片描述

  • 配置任务 tasks.json
    点击 终端 -> 配置任务
    在这里插入图片描述
    选择 C/C++: g++.exe build active file
    在这里插入图片描述

然后会生成一个 tasks.json 文件, 复制粘贴下面的 tasks.json 配置文本
注意:
cwd 就写GCC的bin目录,就是g++.exe所在的目录, 根据自己的安装位置情况填写。

下面这个是EGE所需的链接命令

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

tasks.json

{
// 有关 tasks.json 格式的文档,请参见
    // https://go.microsoft.com/fwlink/?LinkId=733558
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "g++.exe build active file",
            "command": "g++.exe",
            "args": [
                "-g",
                "${workspaceFolder}\\*.cpp",	//多文件编译
                //"${file}",					//单文件编译用这个
                "-o",
                "${workspaceFolder}\\${workspaceRootFolderName}.exe",
                "-lgraphics64",
                "-luuid",
                "-lmsimg32",
                "-lgdi32",
                "-limm32",
                "-lole32",
                "-loleaut32",
                "-lwinmm",
                "-lgdiplus",
            ],
            "options": {
                "cwd": "D:\\mingw-w64\\mingw64\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}
  • 添加 启动配置 (launch.json)
    点击 运行->添加配置
    在这里插入图片描述
    然后会生成一个 launch.json 文件, 复制粘贴下面的配置文本
    注意:
  • externalConsole, 设置是否带控制台true 为带控制台
  • miDebuggerPath:填安装的编译器中gdb.exe的路径,根据自己的安装情况填写(就在那个mingw64里的bin目录中)
    我的是 "D:\\mingw-w64\\mingw64\\bin\\gdb.exe"

文件 launch.json

{
  "version": "0.2.0",
  "configurations": [ 
    {
      "name": "g++.exe build and debug active file",
      "type": "cppdbg",
      "request": "launch",
      "program": "${workspaceFolder}\\${workspaceRootFolderName}.exe",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "environment": [],
      "externalConsole": false,
      "MIMode": "gdb",
      "miDebuggerPath": "D:\\mingw-w64\\mingw64\\bin\\gdb.exe",
      "setupCommands": [
        {
          "description": "Enable pretty-printing for gdb",
          "text": "-enable-pretty-printing",
          "ignoreFailures": true
        }
      ],
      "preLaunchTask": "g++.exe build active file"
    }
  ]
}
  • 保存好全部文件
    在这里插入图片描述
    回到cpp源文件,点击 运行->启动调试(F5)
    在这里插入图片描述
    出现如下运行结果就OK了。
    在这里插入图片描述
    如果有多个源文件,所有源文件要直接放置在工作目录下,否则编译命令需要另外添加:所在目录\\*.cpp, 像下面一样

注意一下,下面 args 中有个参数 ${wordspaceFolder}\\*.cpp
表示编译直接位于工作空间文件夹下的所有cpp源文件,是多文件编译,多个源文件是一个整体,这意味着所有源文件只能有一个 main() 函数,并且不能冲突

如果你想要单独编译一个文件,一个源文件作为一个程序,源文件之间彼此独立,那么可以把 ${wordspaceFolder}\\*.cpp 换成 ${file},这样就只会编译当前文件,编译的时候跳转到对应的源文件,调试运行即可。
在这里插入图片描述

(6) C-Free

  • 所用C-Free版本: C-Free 5, 32位

  • 附C-Free 下载链接:http://www.programarts.com/cfree_ch/
    需要注意的是,C-Free安装路径里不能带空格
    但是它自己安装的时候也会有空格,把 “C-Free 5” 改成 “C-Free5”, 即去掉空格

  • 使用的EGE安装包ege19.01_all
    由于 EGE20.08 不再内置 gdiplus,而C-Free太过老旧(别用C-Free了好不好),没有带有 libgdiplus.a,所以无法安装 EGE20.08,只能安装 EGE19.01
    在这里插入图片描述

头文件和库文件的放置

主要是将安装包中的头文件和库文件放到正确的位置
在这里插入图片描述

  1. 将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 )
    在这里插入图片描述
    在这里插入图片描述

项目的配置

  • 打开C-Free, 选择新建工程
    在这里插入图片描述
  • 选择控制台程序, 工程名称随意(这里取ege), 保存位置选个合适的目录,点击确定。
    在这里插入图片描述
  • 选择一个简单的程序(选其它也行), 点击下一步
    在这里插入图片描述
  • 选择C++语言, 不可选C语言
    在这里插入图片描述
  • 选择一个构建配置(这里选mingw5)
    在这里插入图片描述
  • 这时会打开我们的项目,右边是我们项目中的文件
    在这里插入图片描述
  • 点击工程->设置
    在这里插入图片描述
  • 点击 连接, 在下面参数里复制粘贴上下面这一行

 -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
    在这里插入图片描述
  • 然后点击 构建->重新构建, 然后点击 运行, 就可以看到控制台窗口就关闭了
    在这里插入图片描述
  • 就可以看到控制台窗口不见了
    在这里插入图片描述

C-Free 出现的问题

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

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

(7) 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也可

[1] MinGW-W64 的安装

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

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

[2] EGE的安装

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

[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;
}

在这里插入图片描述

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

选择 窗口(Window) -> 首选项(Preferences)
在这里插入图片描述
点击 常规(General) -> 工作空间(workspace) -> 构建(Build), 把手动构建前自动保存(Save automatically before manual build) 勾选
在这里插入图片描述

添加库
  • 选择项目(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)
    在这里插入图片描述
    在这里插入图片描述
  • 成功配置运行结果
    在这里插入图片描述
  • 主要是添加库,上面那个需要 每次新建一个项目都要重新添加一次 全局设置和导出项目设置我暂时没找到,你们自己搜搜



    EGE专栏: EGE专栏
    上一篇:(一)EGE入门教程
    下一篇:(三)EGE基础教程 上篇
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页