我试图在QT中使用ITK(QT新手并且在ITK中生锈)我终于能够定义包含路径和.lib但我仍然无法运行我的代码。这是一个简单的dicom读者:
typedef signed short InputPixelType;
const unsigned int InputDimension = 2;
typedef itk::Image< InputPixelType, InputDimension > InputImageType;
typedef itk::ImageFileReader< InputImageType > ReaderType;
ReaderType::Pointer reader = ReaderType::New();
reader->SetFileName( "C:\Users\dmilford\Desktop\PvMRIm1" );
typedef itk::GDCMImageIO ImageIOType;
ImageIOType::Pointer gdcmImageIO = ImageIOType::New();
错误出现在最后一行,我收到以下错误
ITKIOGDCM-4.2.lib(itkGDCMImageIO.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall gdcm::Rescaler::SetPixelFormat(class gdcm::PixelFormat const &)" (__imp_?SetPixelFormat@Rescaler@gdcm@@QAEXABVPixelFormat@2@@Z) referenced in function "public: virtual void __thiscall itk::GDCMImageIO::Read(void *)" (?Read@GDCMImageIO@itk@@UAEXPAX@Z)
100多次。
有没有人知道如何解决这个链接器错误,或者知道我可能会得到答案的提示吗?
答案 0 :(得分:1)
此链接错误可能来自ITK和您的Qt编译器之间不一致的编译版本。例如,确保您的ITK是使用MSVC2010构建的,而您的Qt SDK默认编译器是相同的。
答案 1 :(得分:1)
请尝试使用CMake生成构建文件。这需要花费更少的时间,所有问题都将消失。