0

QtDCM编译失败。我按照本手册中的说明进行了所有操作,DCMTK并且ITK编译没有任何问题,但是当我尝试编译时QtDCM,它失败并出现错误:

2>QtDcmFindScu.cpp
2>D:\CPP\qtdcm\src\QtDcmFindScu.cpp(197): error C2259: 'QtDcmFindCallback': cannot instantiate abstract class
2>D:\CPP\qtdcm\src\QtDcmFindScu.cpp(197): note: due to following members:
2>D:\CPP\qtdcm\src\QtDcmFindScu.cpp(197): note: 'void DcmFindSCUCallback::callback(T_DIMSE_C_FindRQ *,int &,T_DIMSE_C_FindRSP *,DcmDataset *)': is abstract
2>D:\CPP\dcmtk-3.6.4\dcmnet\include\dcmtk/dcmnet/dfindscu.h(96): note: see declaration of 'DcmFindSCUCallback::callback'
2>D:\CPP\qtdcm\src\QtDcmFindScu.cpp(198): error C2664: 'OFCondition DcmFindSCU::performQuery(const char *,unsigned int,const char *,const char *,const char *,E_TransferSyntax,T_DIMSE_BlockingMode,int,Uint32,bool,bool,unsigned int,DcmFindSCUExtractMode,int,OFList<OFString> *,DcmFindSCUCallback *,OFList<OFString> *,const char *,const char *)': cannot convert argument 13 from 'bool' to 'DcmFindSCUExtractMode'
2>D:\CPP\qtdcm\src\QtDcmFindScu.cpp(203): note: Conversion to enumeration type requires an explicit cast (static_cast, C-style cast or function-style cast)
2>QtDcmMoveScu.cpp
2>D:\CPP\qtdcm\src\QtDcmMoveScu.cpp(373): error C2039: 'unlock': is not a member of 'GlobalDcmDataDictionary'
2>D:\CPP\dcmtk-3.6.4\dcmdata\include\dcmtk/dcmdata/dcdict.h(216): note: see declaration of 'GlobalDcmDataDictionary'
2>D:\CPP\qtdcm\src\QtDcmMoveScu.cpp(775): error C2660: 'DU_findSOPClassAndInstanceInDataSet': function does not take 4 arguments
2>D:\CPP\dcmtk-3.6.4\dcmnet\include\dcmtk/dcmnet/diutil.h(110): note: see declaration of 'DU_findSOPClassAndInstanceInDataSet'
2>D:\CPP\qtdcm\src\QtDcmMoveScu.cpp(965): error C2660: 'ASC_getAPTitles': function does not take 4 arguments
2>D:\CPP\dcmtk-3.6.4\dcmnet\include\dcmtk/dcmnet/assoc.h(328): note: see declaration of 'ASC_getAPTitles'

图书馆src有麻烦吗?是否有可能我在CMake-GUI配置时犯了错误?

我想编译QtDCM库。

4

1 回答 1

0

QtDCM项目好像从2011年11月起就没有更新过,所以我建议你也下载当时可用的DCMTK版本,即3.6.0版本

于 2019-01-30T20:18:26.437 回答