依赖 64 位 itk-framework 的单元测试 dll
unit-testing dll relying on 64-bit itk-framework
我正在尝试设置一个 "Native Unit Test Project" (Visual C++),它正在测试一个基于 ITK 框架的 DLL 项目。我可能想要模拟 ITK 实现,但首先我只想进行一个依赖于实际库的函数调用。在 x64 上一切都是 运行ning,只是我似乎无法在 x64 上构建单元测试项目,配置管理器只允许 win32。我设置了测试>测试设置>默认处理器架构>x64,但这似乎没有帮助。编译时我得到:
...itk-4.8.1\x64\debug\include\itk-4.8\itkmathdetail.h(286): error C3861: '_mm_cvtsd_si64': identifier not found
当我查看项目>属性>配置属性>VC++ 目录时,它到处都是“...x86”,而在项目中我试图测试它说“ ....x64".
请问我怎样才能让它工作?还是我在执行不可能完成的任务???
更新:
我现在设法 运行 使用 x64 设置的项目。在这种情况下,我遇到的麻烦是 unittest 框架在 win32 上只有 运行s,因此:
error C1083: Cannot open include file: 'CppUnitTest.h': No such file or directory
所以...在编译时我可以选择是我的库不编译(win32 模式)还是单元测试框架不编译(x64 模式)。提醒:在 win32 模式下编译并将 test 设置为 "default processor architecture = x64" 也不起作用,仍然会出现前面所述的编译错误。在这方面,我尝试使用 运行 设置文件,但没有任何区别。
好的。我发现哪里出了问题。首先,所有的东西都必须在 x64 中编译,单元测试项目也是如此。如果您确保按照这些步骤设置 x64 项目
https://msdn.microsoft.com/en-us/library/9yb4317s.aspx
那么你就没有麻烦了。但是,您需要确保复制 win32 设置并且不要勾选 "Create new solution platforms".
我正在尝试设置一个 "Native Unit Test Project" (Visual C++),它正在测试一个基于 ITK 框架的 DLL 项目。我可能想要模拟 ITK 实现,但首先我只想进行一个依赖于实际库的函数调用。在 x64 上一切都是 运行ning,只是我似乎无法在 x64 上构建单元测试项目,配置管理器只允许 win32。我设置了测试>测试设置>默认处理器架构>x64,但这似乎没有帮助。编译时我得到:
...itk-4.8.1\x64\debug\include\itk-4.8\itkmathdetail.h(286): error C3861: '_mm_cvtsd_si64': identifier not found
当我查看项目>属性>配置属性>VC++ 目录时,它到处都是“...x86”,而在项目中我试图测试它说“ ....x64".
请问我怎样才能让它工作?还是我在执行不可能完成的任务???
更新:
我现在设法 运行 使用 x64 设置的项目。在这种情况下,我遇到的麻烦是 unittest 框架在 win32 上只有 运行s,因此:
error C1083: Cannot open include file: 'CppUnitTest.h': No such file or directory
所以...在编译时我可以选择是我的库不编译(win32 模式)还是单元测试框架不编译(x64 模式)。提醒:在 win32 模式下编译并将 test 设置为 "default processor architecture = x64" 也不起作用,仍然会出现前面所述的编译错误。在这方面,我尝试使用 运行 设置文件,但没有任何区别。
好的。我发现哪里出了问题。首先,所有的东西都必须在 x64 中编译,单元测试项目也是如此。如果您确保按照这些步骤设置 x64 项目
https://msdn.microsoft.com/en-us/library/9yb4317s.aspx
那么你就没有麻烦了。但是,您需要确保复制 win32 设置并且不要勾选 "Create new solution platforms".