I’m trying to use ITK to read dcm files from Unreal Engine.
After cmake, I built AllBuild in release mode. I then built the Insertall project and added it to the directory where the Unreal project is located.
The cmake setting modified CMAKE_INSTALL_PREFIX to copy files anywhere you wanted when building an Install project.
I think the header and lib files have all been added normally.
However, when I build an Unreal project, you get the following error.
[Error]
D:\ITKPluginTest\ExternalLib\ITK\Build\include\ITK-6.0\itkeigen\Eigen\src\Core\util\Memory.h(153): error C3861: ‘assert’: identifier not found
D:\ITKPluginTest\ExternalLib\ITK\Build\include\ITK-6.0\itkeigen\Eigen\src\Core\util\Memory.h(220): error C3861: ‘assert’: identifier not found
D:\ITKPluginTest\ExternalLib\ITK\Build\include\ITK-6.0\itkeigen\Eigen\src\Core\MathFunctions.h(1361): error C3861: ‘assert’: identifier not found
======================================
Does anyone know why that error is happening and how to fix it?
The development environment is as follows.
Window10
Visual Studio 2022
If so, I suggest turning on ITK_USE_SYSTEM_EIGEN, then setting EIGEN_DIR to the same one Unreal uses. It will probably not matter for crashing, as you are not trying to transfer some eigen classes between ITK and Unreal libraries.
It took a long time to solve this problem.
As a result, integrating it into Unreal as the original code of ITK was problematic, so I quit.
It was confirmed that if some functions did not return the address when giving the return value, the value would not be received normally when crossing the dll.
I would like to know if there are any corrections or future plans regarding these issues.