最新版 EasyX_20200315(beta) 在 Win10 + VS2017 平台编译 64 位时, 会出现 link2001 错误, 而 x86 不会
程序:
#include <stdio.h>
#include <graphics.h>
#include <stdlib.h>
#include <math.h>
const int wid = 600, hei = 600;
const int Rrout = 200, Rball = 5;
int x, y;
double t;
int main()
{
initgraph(wid, hei);
BeginBatchDraw();
while (1)
{
cleardevice();
x = Rrout * sin(t) + wid / 2;
y = Rrout * cos(t) + hei / 2;
fillcircle(x, y, Rball);
FlushBatchDraw();
t += 0.05;
Sleep(20);
}
getchar();
return 0;
}
错误:
1>EasyXw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(EasyX.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(Image.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(EasyX.ImageFunc.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(EasyX.Var.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 无法解析的外部符号 __GSHandlerCheck_EH4
1>C:\Users\Nuclear_Missile\Desktop\Project1\x64\Debug\Project1.exe : fatal error LNK1120: 2 个无法解析的外部命令
相同的程序在32位可编译, 64位不可编译
如果 EasyX 换成18年的稳定版, 则64位debug版可以编译运行, 64位release版会爆同样的错误
报错:
1>------ 已启动生成: 项目: paint circle, 配置: Release x64 ------
1>EasyXw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(EasyX.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(Image.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(EasyX.ImageFunc.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(EasyX.Var.obj) : error LNK2001: 无法解析的外部符号 __CxxFrameHandler4
1>EasyXw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 无法解析的外部符号 __GSHandlerCheck_EH4
如果在编译参数选择/MT或/MTD时报错会只有
1>EasyXw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 无法解析的外部符号 __GSHandlerCheck_EH4
但仍然编译不过
代码没有任何问题,替换其他包含 easyx 库的代码也会爆同样的错
我 vs 已经经过重置,所有选项均为初始选项,没做任何更改。系统也刚重装过。
希望大神解答