当你想把自己用 EasyX 编写的代码发给别人时,也许对方因为没安装 EasyX 导致无法编译。这时候,你可以只把 EasyX 拷贝进项目里,然后随着项目一起打包发给别人,方便其他人编译。本文以 VS2022 为例,详细讲述这种方法。
1. 创建项目打开 VS2022,新建控制台应用程序(将解决方案和项目放在同一个文件夹)。假定项目路径在:D:\mydoc\TestEasyX。编译执行,确保 VS2022 可以正确编译 C++ 程序。
2. 拷贝 EasyX 相关文件到官网 https://easyx.cn 下载 EasyX,下载到的安装文件是 EasyX_20220610.exe 文件,这个 .exe 比较特殊,可以直接使用压缩软件打开,并解压缩到项目的 EasyX 路径下。以下是文件结构,然后删掉用不到的文件:
D:\mydoc
└ TestEasyX// 项目路径
├ EasyX// EasyX 相关文件
│ ├ include// EasyX 的头文件
│ │ ├ easyx.h // 头文件(提供了当前最新版本的接口)
│ │ └ graphics.h // 头文件(在 easyx.h 的基础上,保留了若干旧接口)
│ ├ lib// EasyX 的库文件
│ │ ├ VC6// 针对 VC6 的库文件【删掉】
│ │ ├ VC2008// 针对 VC2008 ~ 2013 的库文件【删掉】
│ │ └ VC2015// 针对 VC2015 ~ 2019 的库文件(x64, MBCS 版本),根据需要,选择 x64、x86 保留一个。作为例子,保留 x86 的库
│ │ ├ x64// 作为例子,保留 x86 的库,删掉 x64 文件夹【删掉】
│ │ │ ├ EasyXa.lib
│ │ │ └ EasyXw.lib
│ │ └ x86// 作为例子,保留 x86 的库。
│ │ ├ EasyXa.lib
│ │ └ EasyXw.lib
│ └ Setup.hta // 安装程序【删掉】
├ TestEasyX.cpp // cpp 代码文件
├ TestEasyX.sln // 解决方案文件
删完以后的文件结构如下: └ TestEasyX.vcxproj // 项目文件
删完以后的文件结构如下:
3. 修改头文件中的路径D:\mydoc
└ TestEasyX// 项目路径
├ EasyX// EasyX 相关文件
│ ├ include// EasyX 的头文件
│ │ ├ easyx.h // 头文件(提供了当前最新版本的接口)
│ │ └ graphics.h // 头文件(在 easyx.h 的基础上,保留了若干旧接口)
│ └ lib// EasyX 的库文件
│ └ VC2015// 针对 VC2015 ~ 2019 的库文件(x64, MBCS 版本)
│ └ x86
│ ├ EasyXa.lib
│ └ EasyXw.lib
├ TestEasyX.cpp // cpp 代码文件
├ TestEasyX.sln // 解决方案文件
└ TestEasyX.vcxproj // 项目文件
修改头文件路径,打开 d:\mydoc\TestEasyX\EasyX\include\graphics.h,将开始部分的:
#include
修改为:
#include "easyx.h"
修改库文件路径,打开 d:\mydoc\TestEasyX\EasyX\include\easyx.h,将开始部分的:
#ifdef UNICODE
#pragma comment(lib, "EasyXw.lib")
#else
#pragma comment(lib, "EasyXa.lib")
#endif
修改为:
#ifdef UNICODE
#pragma comment(lib, "EasyX\\lib\\VC2015\\x86\\EasyXw.lib")
#else
#pragma comment(lib, "EasyX\\lib\\VC2015\\x86\\EasyXa.lib")
#endif
4. 编写代码
作为例子,将以下代码复制到 TestEasyX.cpp 中:
#include "EasyX\Include\graphics.h"
#include
int main()
{
initgraph(640, 480);
circle(300, 200, 100);
_getch();
closegraph();
return 0;
}
选择编译设置为 x86,然后编译、执行,可以看到窗口中画了一个圆,成功。
至此,EasyX 已经顺利的配置在项目中,可以将这个项目的文件夹打包发给其他人,只要对方有 VS2022,不需要安装 EasyX 就可以打开编译执行。
END
今天的分享到此结束了,如果在编程学习的路上遇到问题,不妨来我的编程学习交流基地一起来学习探讨
C/C++编程学习基地https://jq.qq.com/?_wv=1027&k=ymGLonpM
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)