一、在 VS2010 中编译 Exata
通过命令行的形式来编译调试 EXata 的方式太过麻烦,一次两次还好,时间长了慢慢就烦了,于是想着有没有什么方法能够简化这些操作,翻看手册,发现是可以在 IDE 中进行编译,于是就有了以下尝试,官方步骤可参考:【EXata】2.2 在Windows上编译EXata.
1、编译步骤实现
具体步骤如下所示:
1、在 EXATA_HOME 目录下创建 Makefile 文件: |
2、打开 VS2010 从现有代码创建项目: |
3、输入以下项目信息(项目文件位置、项目名),然后点击下一步: |
4、选择使用外部生成系统,然后点击下一步: |
5、指定调试配置设置,依次对其进行下列内容填写(这部分内容是固定的,对照着一开始写的Makefile文件): |
6、配置完成后,测试是否可以通过 VS2010 来编译 EXata: 编译生成成功: |
二、在 VS2010 中调试 EXata
1、调试步骤实现
调试步骤如下所示:
1、选择 Project > Properties |
2、在左侧面板中,选择配置属性下的调试: 将 命令 设为可执行文件所在的路径。 将 命令参数 设置为要调试的情景配置(.config)文件的名称。 将 工作目录 设为场景配置文件所在的目录。 |
3、直接启动调试即可: |
2、存在的问题
①、问题1:“无法找到“XXX.exe”的调试信息
如下图所示: |
问题1:此时已经处于Debug模式,运行时完全正常,但是一调试就出现对话框,显示出错信息:“无法找到“XXX.exe”的调试信息,或者调试信息不匹配。未使用调试信息生成二进制文件。” |
该问题的常规解决方案是: 但是由于我们这里的项目是直接导入的,在项目属性中不存在上述所说的那些选项,不过倒是不影响运行: |
②、问题2:IDE中断点不可用
问题2:断点不可用 |
比如,此时我们在这个地方打上了断点,但是实际上不会发生任何作用。 关于这个问题,感觉倒是还挺正常的,因为我们本来就是通过 nmake 编译的 EXata,这里的调试其实并不触发编译的操作,只相当于单纯的运行一个场景 |
三、在 VS2022 中编译 EXata 的探索
探索:按理说编译的话,只要有对应的编译环境即可,那么我们能否使用 VS2022 来编译 EXata呢? |
尝试1:在 VS2022 上安装全版本的平台工具集,然后设置成 VS2010 的进行编译 参考资料:vs2022使用全版本平台工具集 |
尝试一番,结果不可行,原因是因为在 VS2022 打开的 EXata (VS2010)项目 配置属性中缺少平台工具集这个配置项,因而无法修改为 VS2010 的工具集: |
四、参考资料
[1] 【EXata】2.2 在Windows上编译EXata [2] 在Windows上编译EXata |