vs源文件能建两个么(vs2017多个源文件单独运行)

vs源文件能建两个么(vs2017多个源文件单独运行)包含 VS CodeBlocks DevC VS Code Eclipse IDE for C C C Free 的安装讲解以及 命令行 GCC 的编译方法 其中 VS 以 VS2017 作安装讲解 其它版本自己参照来安装 如果安装失败 可以进 EGE 官方群 询问 注意带上 错误信息截图 并说明自己用的什么 编译器 按照 哪个教程 配置 配置到了哪一步 配置出错 一般是 文件放置的目录 不对 链接参数 写错 注意主动展示这三个配置信息 头文件 库文件




包含
VS
CodeBlocks
DevC++
VS Code
Eclipse IDE for C/C++
C-Free

的安装讲解以及命令行GCC的编译方法

其中VSVS2017作安装讲解,其它版本自己参照来安装

如果安装失败,可以进EGE官方群1060223135询问

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

  • EGE图形库的安装

      • GCC编译器的链接参数

    • 1. 下载

      • (1) EGE图形库官网百度网盘下载链接:

      • (2) EGE官网站内下载

    • 2. 安装

      • (1) VS2017

        • VS2019去掉控制台

      • (2) Codeblocks

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

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

      • (3) DevC++

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

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

      • (4) 命令行使用GCC编译

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

        • [2] EGE的安装

        • [3] 使用命令行编译

      • (5) VS Code + GCC

        • [1] MinGW-W64 的安装

        • [2] EGE的安装

        • [3] VS Code 配置

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

            • 1.Code Runner插件

            • 2. VSCode启动任务配置

      • (6) C-Free

        • 头文件和库文件的放置

        • 项目的配置

        • C-Free 出现的问题

      • (7) Eclipse IDE for C/C++

        • [1] MinGW-W64 的安装

        • [2] EGE的安装

        • [3] Ecplise IDE 的配置

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

          • 添加库

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

64位

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

32位

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

下载链接里有三个安装包, 根据自己的编译器下载对应的版本

  • ege19.01 for vs2017

  • ege19.01 for vs2019

  • ege19.01_all

https://pan.baidu.com/s/1qWxAgeK#list/path=%2F

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

EGE图形库需要根据自己的编译器来进行安装,下面仅对VS2017 、CodeBlocks、DevC++和C-Free这四个最常用的编译器进行介绍:

  • 使用的安装包
    ege19.01 for vs2017
    如果你使用的是VS2019 ,那么请使用对应的ege19.01 for 2019安装包

  • VS安装EGE,主要是将安装包中 include 文件夹和 lib文件夹 中的文件,复制到VS安装目录中对应的位置。其中lib 文件夹中有 x64x86 两个文件夹,都有对应的库文件要放置。

  • 下图表示对应关系,左边是VS的目录,右边是EGE安装包目录。将右边 include目录里面的 所有文件 直接复制粘贴到左边include目录中,将右边x64 和 x86中的文件同样复制粘贴到对应文件夹里

步骤

先找到自己的VS2017安装目录
例如 E:Visual StudioMicrosoft Visual Studio2017Community
找不到的可以在VS2017桌面图标右键选择打开文件所在位置,如下图

然后找到VS2017中的include目录
Microsoft Visual Studio2017CommunityVCToolsMSVC14.15.26726


再进入下面标红的目录

  • include目录中的内容

    将EGE安装包中的include目录中的所有文件,全选,复制粘贴到刚才的VS2017的include目录下

    头文件的复制就完成了,现在到复制 lib 文件

找到VS2017中的lib目录(就在include的旁边)

(如下图)进lib目录将会看到x64 和x86两个文件夹,x64是64位,x86是32位的

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




测试是否安装成功

  • 用VS2017新建一个工程(空项目)

  如果不知道怎么用VS2017新建工程,可以查看教程: http://c.biancheng.net/view/457.html

  • 新建一个.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总是跳出控制台,需要设置一下在项目属性中设置一下子系统, 如果原先是控制台,那么设置成未设置

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位

  • 使用的EGE安装包

    ege19.01_all

安装对应关系:

左边为CodeBlocks安装目录,右边为EGE安装目录
将右边 include里面的所有东西全选,直接复制粘贴到左边include文件夹里面
mingw32mingw64中的lib文件夹中的lib文件都复制粘贴到lib目录

CodeBlocks17.12

CodeBlocks20.03

查看CodeBlocks版本信息
工具栏 Help --> About

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

  • 我的安装目录 E:codeblockscodeblocks-17.12CodeBlocks

    可以看到有个MinGW 文件夹
    如果没有看到MinGW文件夹,那说明你安装的是不自带MinGW的CodeBlocks,编译器在其它地方
    打开CodeBlocks, 选择设置(Settings) -> 编译器(Compiler)

    然后点击一下选项卡 可执行工具集(Toolchain executables),就能看到MinGW文件夹在哪

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

    打开EGE安装包文件ege19.01_all, 看到有include 和 lib

  • 这时我们把EGE安装包include目录中文件复制

  • 粘贴到Codeblocks的include文件夹中

参考路径:
CodeBlocks17.12 (32位)
E:CodeBlocksMinGWinclude

CodeBlocks20.03 (64位)
E:codeblockscodeblocks-20.03CodeBlocksMinGWx86_64-w64-mingw32include

下面是目录位置截图
CodeBlocks17.12include目录

CodeBlocks20.03include目录

  • lib文件的放置:

  • 将EGE安装包中mingw32文件夹中的 libgraphics.a库文件mingw64中的 libgraphics64.a文件,都复制粘贴到安装目录中的lib目录中。


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

参考路径:
CodeBlocks17.12
E:CodeBlocksMinGWlib

CodeBlocks20.03
E:codeblockscodeblocks-20.03CodeBlocksMinGWx86_64-w64-mingw32lib

下面是目录位置截图
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

  • 弹出文件选择框,要开始添加链接库了

将下面的文本复制粘贴到输入框中,点击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已经配置完成

  • 但是这样的话每次新建工程都要重新配置链接库

  • 可以保存为模板,下次新建时选择

  • 所用DevC++版本: 5.11 版本, 64位

  • 附 DevC++下载链接 : https://sourceforge.net/projects/orwelldevcpp/

  • 使用的EGE安装包

    ege19.01_all

安装步骤

  • 先在DevC++桌面图标右键,选择打开文件所在的位置

    然后就进入到了DevC++所在的安装目录

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

  1. 将EGE安装包include目录中的文件全选,复制粘贴到DevC++对应include目录中

    参考路径: D:Dev-CppMinGW64libgccx86_64-w64-mingw324.9.2include



  2. 链接库文件分32位的和64位的,两个都要复制,

    (1) 将EGE安装包中的64位 链接库文件, 复制粘贴到DevC++中对应的位置

    参考路径: D:Dev-cppMinGW64libgccx86_64-w64-mingw324.9.2




    (2) 将EGE安装包中的32位 链接库文件, 复制粘贴到DevC++中对应的位置

    参考路径:D:Dev-cppMinGW64libgccx86_64-w64-mingw324.9.232





    好了,头文件和库文件就已经完成了

  • 现在要使用DecV++新建工程
    首先打开DevC++,点击 File–> New–>Project…, 新建工程

    新建一个空项目(Empty Project),项目名字随意,选择 C++ Project(默认), 点击 OK

    然后需要选择DevC++工程保存的目录, 选好位置后,新建一个目录, 点击打开,然后点击 保存,项目就建好了。

    可以看到左边项目下,自动帮我们新建了一个文件

    然后我们点击工具栏上的 保存图标, 文件命名为 "main.cpp"

  • 接下来要对项目进行配置
    点击 工具(Tools), 选择 编译选项(Compiler Option…)

配置的编译器分为32位和64位 的,两个需要链接不同的库,所以参数有所不同

下面配置64位的
选择 64位的,将最下面红框标注的链接命令改为下面这句

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

三个64位的都要设置一遍

下面配置32位
链接命令改为

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

三个32位的都要设置

6个都修改完后,点击 OK 就行,这样就已经全部配置完成了。
记住,以后如果要新建项目,要用到EGE,都要重新配置一下链接命令,因为配置的链接命令只对应当前项目

在有些别的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位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位的项目中,库路径MinGW64lib32不存在
查看一下目录,发现确实没有 lib32 这个文件夹

刚打开时没有打开项目,那应该是全局设置里面的。
选择 工具 -> 编译选项

检查一下所有32位配置的库路径,写有这个不存在的路径话,点击一下“删除无效”按钮,就会把无效的路径删除,然后点击确认保存就好。

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

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

  • 所用EGE安装包 :

    ege19.01_all
  • 编译器版本 :

    MinGW-G64 GCC 8.1.0

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

[1] MinGW-W64 的安装

先去下载好最新版的GCC

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

  • MinGW-W64 GCC
    https://sourceforge.net/projects/mingw-w64/files/mingw-w64/

  • TDM-GCC https://jmeubank.github.io/tdm-gcc/download/

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-w64mingw64bin, 自己到目录里面复制即可。


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

    命令行输入

    g++ --version

    查看g++版本信息,

    gdb --version

    查看gdb版本信息,能正确输入信息就OK了。

[2] EGE的安装

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

参考路径 D:mingw-w64mingw64x86_64-w64-mingw32include



把 EGE安装包中mingw64lib 中的库文件,复制粘贴到 mingw-w64 的库目录中。
参考路径 D:mingw-w64mingw64x86_64-w64-mingw32lib
记住,64位系统的选libgraphics64.a32位系统选libgraphics.a, 两个都复制进去也行。


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:VSProjectegeCmdege,所以命令是
    cd E:VSProjectegeCmdege

  • 编译
    输入 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


如果编译链接没有问题,就会生成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_Hvoid 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命令,可以自行上网查找资料

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

  • 所用EGE安装包 :

    ege19.01_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放置头文件的目录
xxmingw64include
xxmingw64x86_64-w64-mingw32include

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的路径,根据自己的安装情况填写
    我的是 "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},这样就只会编译当前文件,编译的时候跳转到对应的源文件,调试运行即可。

  • 所用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

头文件和库文件的放置

主要是将安装包中的头文件和库文件放到正确的位置

  1. 将EGE安装包 include 目录中的文件全选,复制粘贴到C-Free对应include目录中

    参考路径( E:C-Free5mingwinclude )


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

    放置位置参考路径( E:C-Free5mingwlib )


项目的配置

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

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

  • 选择一个简单的程序, 点击下一步

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


  • 选择一个构建配置

  • 这时会打开我们的项目,右边是我们项目中的文件

  • 点击工程->设置

  • 点击 连接, 在下面参数里复制粘贴上下面这一行

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


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

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

  • 打开 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

这时找到安装目录,把路径上的空格都去掉,如下图,为软件自动生成的安装目录,带有空格,请把空格删掉

  • 所用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安装包:ege19.01_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

  • 填写项目名称,选择一个空文件夹作为工作空间, 选择之前安装好的GCC编译器,点击finish

  • 新建源文件填写源文件名点击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个库

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)

  • 成功配置运行结果

  • 主要是添加库,上面那个需要

    每次新建一个项目都要重新添加一次

    全局设置和导出项目设置我暂时没找到,你们自己搜搜

编程小号
上一篇 2025-03-07 07:01
下一篇 2025-01-29 20:40

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/26906.html