QT VTK ITK 配置

VTK安装参考 https://blog.csdn.net/jepco1/article/details/80628026
ITK安装参考 https://blog.csdn.net/numit/article/details/9985045 (博主字写错了,每节标题打成vtk了)

按照两位介绍,一步一步安装,我记录下我自己出错的地方,和修改方式。

  1. 不管是vtk还是itk如果要在qt用的话,32位和64位要在这里提前选好。否则编译时候会出现
    LNK1112 模块计算机类型“x64”与目标计算机类型“x86”冲突 QVTKWidgetPlugin

QT VTK ITK 配置_第1张图片

  1. itk编译非常非常慢,千万别选Example,我第一次选了,debug、relese各四个小时。

  2. 不管是vtk还是itk都要编译两次,一次debug,一次relese。
    INSTALL也各需要两次。第一次INSTALL完成后,把INSTALL_PREFIX路径里include,lib,dll(bin)等编译结果新建文件夹保存,让后换relese编译第二次,比如我这样。
    QT VTK ITK 配置_第2张图片
    QT VTK ITK 配置_第3张图片
    QT VTK ITK 配置_第4张图片
    QT VTK ITK 配置_第5张图片

  3. 把relese版本的bin加入系统path变量,不要加debug。测试时,把debug生成的dll(直接整个bin里东西好了)复制到debug下的.exe同级目录,其实就是debug和relese分别用两套dll。

  4. vtk、itk使用时候,debug和relese分别调用不同的lib,这是我的.pro

CONFIG(debug, debug|release):{
INCLUDEPATH+=C:/vtk/include_debug/vtk-8.2
LIBS += -L'C:/vtk/lib_debug'\
-lvtkChartsCore-8.2\
-lvtkCommonColor-8.2\
-lvtkCommonComputationalGeometry-8.2\
-lvtkCommonCore-8.2\
-lvtkCommonDataModel-8.2\
-lvtkCommonExecutionModel-8.2\
-lvtkCommonMath-8.2\
-lvtkCommonMisc-8.2\
-lvtkCommonSystem-8.2\
-lvtkCommonTransforms-8.2\
-lvtkDICOMParser-8.2\
-lvtkDomainsChemistry-8.2\
-lvtkDomainsChemistryOpenGL2-8.2\
-lvtkdoubleconversion-8.2\
-lvtkexodusII-8.2\
-lvtkexpat-8.2\
-lvtkFiltersAMR-8.2\
-lvtkFiltersCore-8.2\
-lvtkFiltersExtraction-8.2\
-lvtkFiltersFlowPaths-8.2\
-lvtkFiltersGeneral-8.2\
-lvtkFiltersGeneric-8.2\
-lvtkFiltersGeometry-8.2\
-lvtkFiltersHybrid-8.2\
-lvtkFiltersHyperTree-8.2\
-lvtkFiltersImaging-8.2\
-lvtkFiltersModeling-8.2\
-lvtkFiltersParallel-8.2\
-lvtkFiltersParallelImaging-8.2\
-lvtkFiltersPoints-8.2\
-lvtkFiltersProgrammable-8.2\
-lvtkFiltersSelection-8.2\
-lvtkFiltersSMP-8.2\
-lvtkFiltersSources-8.2\
-lvtkFiltersStatistics-8.2\
-lvtkFiltersTexture-8.2\
-lvtkFiltersTopology-8.2\
-lvtkFiltersVerdict-8.2\
-lvtkfreetype-8.2\
-lvtkGeovisCore-8.2\
-lvtkgl2ps-8.2\
-lvtkglew-8.2\
-lvtkGUISupportQt-8.2\
-lvtkGUISupportQtSQL-8.2\
-lvtkhdf5-8.2\
-lvtkhdf5_hl-8.2\
-lvtkImagingColor-8.2\
-lvtkImagingCore-8.2\
-lvtkImagingFourier-8.2\
-lvtkImagingGeneral-8.2\
-lvtkImagingHybrid-8.2\
-lvtkImagingMath-8.2\
-lvtkImagingMorphological-8.2\
-lvtkImagingSources-8.2\
-lvtkImagingStatistics-8.2\
-lvtkImagingStencil-8.2\
-lvtkInfovisCore-8.2\
-lvtkInfovisLayout-8.2\
-lvtkInteractionImage-8.2\
-lvtkInteractionStyle-8.2\
-lvtkInteractionWidgets-8.2\
-lvtkIOAMR-8.2\
-lvtkIOAsynchronous-8.2\
-lvtkIOCityGML-8.2\
-lvtkIOCore-8.2\
-lvtkIOEnSight-8.2\
-lvtkIOExodus-8.2\
-lvtkIOExport-8.2\
-lvtkIOExportOpenGL2-8.2\
-lvtkIOExportPDF-8.2\
-lvtkIOGeometry-8.2\
-lvtkIOImage-8.2\
-lvtkIOImport-8.2\
-lvtkIOInfovis-8.2\
-lvtkIOLegacy-8.2\
-lvtkIOLSDyna-8.2\
-lvtkIOMINC-8.2\
-lvtkIOMovie-8.2\
-lvtkIONetCDF-8.2\
-lvtkIOParallel-8.2\
-lvtkIOParallelXML-8.2\
-lvtkIOPLY-8.2\
-lvtkIOSegY-8.2\
-lvtkIOSQL-8.2\
-lvtkIOTecplotTable-8.2\
-lvtkIOVeraOut-8.2\
-lvtkIOVideo-8.2\
-lvtkIOXML-8.2\
-lvtkIOXMLParser-8.2\
-lvtkjpeg-8.2\
-lvtkjsoncpp-8.2\
-lvtklibharu-8.2\
-lvtklibxml2-8.2\
-lvtkLocalExample-8.2\
-lvtklz4-8.2\
-lvtklzma-8.2\
-lvtkmetaio-8.2\
-lvtkNetCDF-8.2\
-lvtkogg-8.2\
-lvtkParallelCore-8.2\
-lvtkpng-8.2\
-lvtkproj-8.2\
-lvtkpugixml-8.2\
-lvtkRenderingAnnotation-8.2\
-lvtkRenderingContext2D-8.2\
-lvtkRenderingContextOpenGL2-8.2\
-lvtkRenderingCore-8.2\
-lvtkRenderingFreeType-8.2\
-lvtkRenderingGL2PSOpenGL2-8.2\
-lvtkRenderingImage-8.2\
-lvtkRenderingLabel-8.2\
-lvtkRenderingLOD-8.2\
-lvtkRenderingOpenGL2-8.2\
-lvtkRenderingQt-8.2\
-lvtkRenderingVolume-8.2\
-lvtkRenderingVolumeOpenGL2-8.2\
-lvtksqlite-8.2\
-lvtksys-8.2\
-lvtkTestingGenericBridge-8.2\
-lvtkTestingIOSQL-8.2\
-lvtkTestingRendering-8.2\
-lvtktheora-8.2\
-lvtktiff-8.2\
-lvtkverdict-8.2\
-lvtkViewsContext2D-8.2\
-lvtkViewsCore-8.2\
-lvtkViewsInfovis-8.2\
-lvtkViewsQt-8.2\
-lvtkzlib-8.2\
}else:CONFIG(release, debug|release):{
INCLUDEPATH+=C:/vtk/include_relese/vtk-8.2
LIBS += -L'C:/vtk/lib_relese'\
-lvtkChartsCore-8.2\
-lvtkCommonColor-8.2\
-lvtkCommonComputationalGeometry-8.2\
-lvtkCommonCore-8.2\
-lvtkCommonDataModel-8.2\
-lvtkCommonExecutionModel-8.2\
-lvtkCommonMath-8.2\
-lvtkCommonMisc-8.2\
-lvtkCommonSystem-8.2\
-lvtkCommonTransforms-8.2\
-lvtkDICOMParser-8.2\
-lvtkDomainsChemistry-8.2\
-lvtkDomainsChemistryOpenGL2-8.2\
-lvtkdoubleconversion-8.2\
-lvtkexodusII-8.2\
-lvtkexpat-8.2\
-lvtkFiltersAMR-8.2\
-lvtkFiltersCore-8.2\
-lvtkFiltersExtraction-8.2\
-lvtkFiltersFlowPaths-8.2\
-lvtkFiltersGeneral-8.2\
-lvtkFiltersGeneric-8.2\
-lvtkFiltersGeometry-8.2\
-lvtkFiltersHybrid-8.2\
-lvtkFiltersHyperTree-8.2\
-lvtkFiltersImaging-8.2\
-lvtkFiltersModeling-8.2\
-lvtkFiltersParallel-8.2\
-lvtkFiltersParallelImaging-8.2\
-lvtkFiltersPoints-8.2\
-lvtkFiltersProgrammable-8.2\
-lvtkFiltersSelection-8.2\
-lvtkFiltersSMP-8.2\
-lvtkFiltersSources-8.2\
-lvtkFiltersStatistics-8.2\
-lvtkFiltersTexture-8.2\
-lvtkFiltersTopology-8.2\
-lvtkFiltersVerdict-8.2\
-lvtkfreetype-8.2\
-lvtkGeovisCore-8.2\
-lvtkgl2ps-8.2\
-lvtkglew-8.2\
-lvtkGUISupportQt-8.2\
-lvtkGUISupportQtSQL-8.2\
-lvtkhdf5-8.2\
-lvtkhdf5_hl-8.2\
-lvtkImagingColor-8.2\
-lvtkImagingCore-8.2\
-lvtkImagingFourier-8.2\
-lvtkImagingGeneral-8.2\
-lvtkImagingHybrid-8.2\
-lvtkImagingMath-8.2\
-lvtkImagingMorphological-8.2\
-lvtkImagingSources-8.2\
-lvtkImagingStatistics-8.2\
-lvtkImagingStencil-8.2\
-lvtkInfovisCore-8.2\
-lvtkInfovisLayout-8.2\
-lvtkInteractionImage-8.2\
-lvtkInteractionStyle-8.2\
-lvtkInteractionWidgets-8.2\
-lvtkIOAMR-8.2\
-lvtkIOAsynchronous-8.2\
-lvtkIOCityGML-8.2\
-lvtkIOCore-8.2\
-lvtkIOEnSight-8.2\
-lvtkIOExodus-8.2\
-lvtkIOExport-8.2\
-lvtkIOExportOpenGL2-8.2\
-lvtkIOExportPDF-8.2\
-lvtkIOGeometry-8.2\
-lvtkIOImage-8.2\
-lvtkIOImport-8.2\
-lvtkIOInfovis-8.2\
-lvtkIOLegacy-8.2\
-lvtkIOLSDyna-8.2\
-lvtkIOMINC-8.2\
-lvtkIOMovie-8.2\
-lvtkIONetCDF-8.2\
-lvtkIOParallel-8.2\
-lvtkIOParallelXML-8.2\
-lvtkIOPLY-8.2\
-lvtkIOSegY-8.2\
-lvtkIOSQL-8.2\
-lvtkIOTecplotTable-8.2\
-lvtkIOVeraOut-8.2\
-lvtkIOVideo-8.2\
-lvtkIOXML-8.2\
-lvtkIOXMLParser-8.2\
-lvtkjpeg-8.2\
-lvtkjsoncpp-8.2\
-lvtklibharu-8.2\
-lvtklibxml2-8.2\
-lvtkLocalExample-8.2\
-lvtklz4-8.2\
-lvtklzma-8.2\
-lvtkmetaio-8.2\
-lvtkNetCDF-8.2\
-lvtkogg-8.2\
-lvtkParallelCore-8.2\
-lvtkpng-8.2\
-lvtkproj-8.2\
-lvtkpugixml-8.2\
-lvtkRenderingAnnotation-8.2\
-lvtkRenderingContext2D-8.2\
-lvtkRenderingContextOpenGL2-8.2\
-lvtkRenderingCore-8.2\
-lvtkRenderingFreeType-8.2\
-lvtkRenderingGL2PSOpenGL2-8.2\
-lvtkRenderingImage-8.2\
-lvtkRenderingLabel-8.2\
-lvtkRenderingLOD-8.2\
-lvtkRenderingOpenGL2-8.2\
-lvtkRenderingQt-8.2\
-lvtkRenderingVolume-8.2\
-lvtkRenderingVolumeOpenGL2-8.2\
-lvtksqlite-8.2\
-lvtksys-8.2\
-lvtkTestingGenericBridge-8.2\
-lvtkTestingIOSQL-8.2\
-lvtkTestingRendering-8.2\
-lvtktheora-8.2\
-lvtktiff-8.2\
-lvtkverdict-8.2\
-lvtkViewsContext2D-8.2\
-lvtkViewsCore-8.2\
-lvtkViewsInfovis-8.2\
-lvtkViewsQt-8.2\
-lvtkzlib-8.2\
}

CONFIG(release, debug|release):{
INCLUDEPATH+=C:/ITK/Bin/release/include/ITK-5.0
LIBS += -L'C:/ITK/Bin/relese/lib'\
-lITKBiasCorrection-5.0\
-lITKCommon-5.0\
-lITKDeprecated-5.0\
-lITKDICOMParser-5.0\
-litkdouble-conversion-5.0\
-lITKEXPAT-5.0\
-litkgdcmcharls-5.0\
-litkgdcmCommon-5.0\
-litkgdcmDICT-5.0\
-litkgdcmDSED-5.0\
-litkgdcmIOD-5.0\
-litkgdcmjpeg12-5.0\
-litkgdcmjpeg16-5.0\
-litkgdcmjpeg8-5.0\
-litkgdcmMEXD-5.0\
-litkgdcmMSFF-5.0\
-litkgdcmopenjp2-5.0\
-litkgdcmsocketxx-5.0\
-lITKgiftiio-5.0\
-lITKIOBioRad-5.0\
-lITKIOBMP-5.0\
-lITKIOBruker-5.0\
-lITKIOCSV-5.0\
-lITKIOGDCM-5.0\
-lITKIOGE-5.0\
-lITKIOGIPL-5.0\
-lITKIOHDF5-5.0\
-lITKIOImageBase-5.0\
-lITKIOIPL-5.0\
-lITKIOJPEG-5.0\
-lITKIOJPEG2000-5.0\
-lITKIOLSM-5.0\
-lITKIOMeshBase-5.0\
-lITKIOMeshBYU-5.0\
-lITKIOMeshFreeSurfer-5.0\
-lITKIOMeshGifti-5.0\
-lITKIOMeshOBJ-5.0\
-lITKIOMeshOFF-5.0\
-lITKIOMeshVTK-5.0\
-lITKIOMeta-5.0\
-lITKIOMINC-5.0\
-lITKIOMRC-5.0\
-lITKIONIFTI-5.0\
-lITKIONRRD-5.0\
-lITKIOPNG-5.0\
-lITKIOSiemens-5.0\
-lITKIOSpatialObjects-5.0\
-lITKIOStimulate-5.0\
-lITKIOTIFF-5.0\
-lITKIOTransformBase-5.0\
-lITKIOTransformHDF5-5.0\
-lITKIOTransformInsightLegacy-5.0\
-lITKIOTransformMatlab-5.0\
-lITKIOVTK-5.0\
-lITKIOXML-5.0\
-litkjpeg-5.0\
-lITKKLMRegionGrowing-5.0\
-lITKLabelMap-5.0\
-litklbfgs-5.0\
-lITKMesh-5.0\
-lITKMetaIO-5.0\
-litkminc2-5.0\
-litknetlib-5.0\
-litkNetlibSlatec-5.0\
-lITKniftiio-5.0\
-lITKNrrdIO-5.0\
-litkopenjpeg-5.0\
-lITKOptimizers-5.0\
-lITKOptimizersv4-5.0\
-lITKPath-5.0\
-litkpng-5.0\
-lITKPolynomials-5.0\
-lITKQuadEdgeMesh-5.0\
-lITKSpatialObjects-5.0\
-lITKStatistics-5.0\
-litksys-5.0\
-lITKTestKernel-5.0\
-litktestlib-5.0\
-litktiff-5.0\
-lITKTransform-5.0\
-lITKTransformFactory-5.0\
-litkv3p_netlib-5.0\
-litkvcl-5.0\
-lITKVideoCore-5.0\
-lITKVideoIO-5.0\
-litkvnl-5.0\
-litkvnl_algo-5.0\
-lITKVNLInstantiation-5.0\
-lITKVTK-5.0\
-lITKWatersheds-5.0\
-litkzlib-5.0\
-lITKznz-5.0\
-llibitkhdf5\
-llibitkhdf5_cpp\
}else:CONFIG(debug, debug|release):{
INCLUDEPATH+=C:/ITK/Bin/debug/include/ITK-5.0
LIBS += -L'C:/ITK/Bin/debug/lib'\
-lITKBiasCorrection-5.0\
-lITKCommon-5.0\
-lITKDICOMParser-5.0\
-litkdouble-conversion-5.0\
-lITKEXPAT-5.0\
-litkgdcmcharls-5.0\
-litkgdcmCommon-5.0\
-litkgdcmDICT-5.0\
-litkgdcmDSED-5.0\
-litkgdcmIOD-5.0\
-litkgdcmjpeg12-5.0\
-litkgdcmjpeg16-5.0\
-litkgdcmjpeg8-5.0\
-litkgdcmMEXD-5.0\
-litkgdcmMSFF-5.0\
-litkgdcmopenjp2-5.0\
-litkgdcmsocketxx-5.0\
-lITKgiftiio-5.0\
-lITKIOBioRad-5.0\
-lITKIOBMP-5.0\
-lITKIOBruker-5.0\
-lITKIOCSV-5.0\
-lITKIOGDCM-5.0\
-lITKIOGE-5.0\
-lITKIOGIPL-5.0\
-lITKIOHDF5-5.0\
-lITKIOImageBase-5.0\
-lITKIOIPL-5.0\
-lITKIOJPEG-5.0\
-lITKIOJPEG2000-5.0\
-lITKIOLSM-5.0\
-lITKIOMeshBase-5.0\
-lITKIOMeshBYU-5.0\
-lITKIOMeshFreeSurfer-5.0\
-lITKIOMeshGifti-5.0\
-lITKIOMeshOBJ-5.0\
-lITKIOMeshOFF-5.0\
-lITKIOMeshVTK-5.0\
-lITKIOMeta-5.0\
-lITKIOMINC-5.0\
-lITKIOMRC-5.0\
-lITKIONIFTI-5.0\
-lITKIONRRD-5.0\
-lITKIOPNG-5.0\
-lITKIOSiemens-5.0\
-lITKIOSpatialObjects-5.0\
-lITKIOStimulate-5.0\
-lITKIOTIFF-5.0\
-lITKIOTransformBase-5.0\
-lITKIOTransformHDF5-5.0\
-lITKIOTransformInsightLegacy-5.0\
-lITKIOTransformMatlab-5.0\
-lITKIOVTK-5.0\
-lITKIOXML-5.0\
-litkjpeg-5.0\
-lITKKLMRegionGrowing-5.0\
-lITKLabelMap-5.0\
-litklbfgs-5.0\
-lITKMesh-5.0\
-lITKMetaIO-5.0\
-litkminc2-5.0\
-litknetlib-5.0\
-litkNetlibSlatec-5.0\
-lITKniftiio-5.0\
-lITKNrrdIO-5.0\
-litkopenjpeg-5.0\
-lITKOptimizers-5.0\
-lITKOptimizersv4-5.0\
-lITKPath-5.0\
-litkpng-5.0\
-lITKPolynomials-5.0\
-lITKQuadEdgeMesh-5.0\
-lITKSpatialObjects-5.0\
-lITKStatistics-5.0\
-litksys-5.0\
-lITKTestKernel-5.0\
-litktestlib-5.0\
-litktiff-5.0\
-lITKTransform-5.0\
-lITKTransformFactory-5.0\
-litkv3p_netlib-5.0\
-litkvcl-5.0\
-lITKVideoCore-5.0\
-lITKVideoIO-5.0\
-litkvnl-5.0\
-litkvnl_algo-5.0\
-lITKVNLInstantiation-5.0\
-lITKVTK-5.0\
-lITKWatersheds-5.0\
-litkzlib-5.0\
-lITKznz-5.0\
-llibitkhdf5_cpp_D\
-llibitkhdf5_D\
}

你可能感兴趣的:(QT+VTK+ITK)