Hi everyone,
Image processing scientist, I’m pretty used to ITK pipelines. However, I’m new to ITK development…
Recently converted to Python (really nice for scripting/prototyping) I’m trying to wrap some Insight Journal contributions prior to implement my own filters.
My first try is the 3D skeleton image filter : ITKbinaryThinningImageFilter3D
- I started with cookiecutter to initiate the module template,
- populated my own module using the Insight Journal contribution.
After some struggle with the *.wrap
files, I think I managed to have something almost presentable.
My module wont build but I’m pretty stuck in finding the reason why …
appveyor log
[18/24] Completed 'swig'
[19/24] Generating itkBinaryThinningImageFilter3DPython.cpp, C:/P/IPP/ITK-win_35-x64/lib/itkBinaryThinningImageFilter3DPython.py
[20/24] Generating BinaryThinningImageFilter3DPython.cpp, C:/P/IPP/ITK-win_35-x64/lib/BinaryThinningImageFilter3DPython.py
[21/24] Building CXX object Wrapping\Modules\BinaryThinningImageFilter3D\CMakeFiles\BinaryThinningImageFilter3DPython.dir\BinaryThinningImageFilter3DPython.cpp.obj
[22/24] Building CXX object Wrapping\Modules\BinaryThinningImageFilter3D\CMakeFiles\BinaryThinningImageFilter3DPython.dir\itkBinaryThinningImageFilter3DPython.cpp.obj
[23/24] Linking CXX shared module C:\P\IPP\ITK-win_35-x64\lib\_BinaryThinningImageFilter3DPython.pyd
FAILED: C:/P/IPP/ITK-win_35-x64/lib/_BinaryThinningImageFilter3DPython.pyd
cmd.exe /C "cd . && C:\P\IPP\venv-35-x64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_dll --intdir=Wrapping\Modules\BinaryThinningImageFilter3D\CMakeFiles\BinaryThinningImageFilter3DPython.dir --manifests -- C:\PROGRA~2\MI0E91~1.0\VC\bin\X86_AM~1\link.exe /nologo @CMakeFiles/BinaryThinningImageFilter3DPython.rsp /out:C:\P\IPP\ITK-win_35-x64\lib\_BinaryThinningImageFilter3DPython.pyd /implib:C:\P\IPP\ITK-win_35-x64\lib\BinaryThinningImageFilter3DPython.lib /pdb:C:\P\IPP\ITK-win_35-x64\lib\_BinaryThinningImageFilter3DPython.pdb /dll /version:0.0 /machine:x64 /INCREMENTAL:NO && cd ."
LINK: command "C:\PROGRA~2\MI0E91~1.0\VC\bin\X86_AM~1\link.exe /nologo @CMakeFiles/BinaryThinningImageFilter3DPython.rsp /out:C:\P\IPP\ITK-win_35-x64\lib\_BinaryThinningImageFilter3DPython.pyd /implib:C:\P\IPP\ITK-win_35-x64\lib\BinaryThinningImageFilter3DPython.lib /pdb:C:\P\IPP\ITK-win_35-x64\lib\_BinaryThinningImageFilter3DPython.pdb /dll /version:0.0 /machine:x64 /INCREMENTAL:NO /MANIFEST /MANIFESTFILE:C:\P\IPP\ITK-win_35-x64\lib\_BinaryThinningImageFilter3DPython.pyd.manifest" failed (exit code 1181) with the following output:
LINK : fatal error LNK1181: cannot open input file 'BinaryThinningImageFilter3D.lib'
ninja: build stopped: subcommand failed.
circleci log
[[15/16] Linking CXX shared module ../../ITK-cp27-cp27m-manylinux1_x64/lib/_BinaryThinningImageFilter3DPython.so
FAILED: ../../ITK-cp27-cp27m-manylinux1_x64/lib/_BinaryThinningImageFilter3DPython.so
: && /opt/rh/devtoolset-2/root/usr/bin/g++ -fPIC -Wno-array-bounds -Wno-array-bounds -Os -DNDEBUG -shared -o ../../ITK-cp27-cp27m-manylinux1_x64/lib/_BinaryThinningImageFilter3DPython.so Wrapping/Modules/BinaryThinningImageFilter3D/CMakeFiles/BinaryThinningImageFilter3DPython.dir/BinaryThinningImageFilter3DPython.cpp.o Wrapping/Modules/BinaryThinningImageFilter3D/CMakeFiles/BinaryThinningImageFilter3DPython.dir/itkBinaryThinningImageFilter3DPython.cpp.o ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkdouble-conversion-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitksys-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkvnl_algo-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkvnl-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkv3p_netlib-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitknetlib-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkvcl-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKCommon-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkNetlibSlatec-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKStatistics-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKTransform-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKLabelMap-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKMesh-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkzlib-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKMetaIO-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKSpatialObjects-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKPath-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKQuadEdgeMesh-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOImageBase-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKOptimizers-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKPolynomials-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKBiasCorrection-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKDICOMParser-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKEXPAT-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmDICT-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmMSFF-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKznz-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKniftiio-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKgiftiio-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkhdf5_cpp.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkhdf5.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOBMP-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOBioRad-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOBruker-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOCSV-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOGDCM-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOIPL-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOGE-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOGIPL-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOHDF5-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkjpeg-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOJPEG-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitktiff-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOTIFF-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOLSM-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkminc2-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMINC-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMRC-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMeshBase-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMeshBYU-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMeshVTK-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMesh-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMeta-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIONIFTI-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKNrrdIO-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIONRRD-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkpng-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOPNG-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOSiemens-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOXML-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOSpatialObjects-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOStimulate-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKTransformFactory-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOTransformBase-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOTransformHDF5-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOTransformInsightLegacy-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOTransformMatlab-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOVTK-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKKLMRegionGrowing-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitklbfgs-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKOptimizersv4-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKVTK-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKVideoCore-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKVideoIO-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKWatersheds-5.0.a -lBinaryThinningImageFilter3D ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmMSFF-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmDICT-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmIOD-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmDSED-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmCommon-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmjpeg8-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmjpeg12-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmjpeg16-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmopenjp2-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmcharls-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkgdcmuuid-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOTIFF-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitktiff-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkjpeg-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkminc2-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKgiftiio-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMeshBYU-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMeshVTK-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOMeshBase-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKQuadEdgeMesh-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKMetaIO-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKniftiio-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKznz-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKNrrdIO-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkpng-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOIPL-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOXML-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKEXPAT-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkhdf5_cpp.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkhdf5.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkzlib-5.0.a -lrt ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOTransformBase-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKTransformFactory-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKOptimizers-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitklbfgs-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKIOImageBase-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKVideoCore-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKStatistics-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkNetlibSlatec-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKSpatialObjects-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKMesh-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKTransform-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKPath-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKCommon-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkdouble-conversion-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitksys-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libITKVNLInstantiation-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkvnl_algo-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkvnl-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkv3p_netlib-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitknetlib-5.0.a ../../ITK-cp27-cp27m-manylinux1_x64/lib/libitkvcl-5.0.a -lm -lpthread -ldl -lm && :
/opt/rh/devtoolset-2/root/usr/libexec/gcc/x86_64-CentOS-linux/4.8.2/ld: cannot find -lBinaryThinningImageFilter3D
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
File "/opt/python/cp27-cp27m/lib/python2.7/site-packages/skbuild/setuptools_wrap.py", line 409, in setup
cmkr.make(make_args, env=env)
File "/opt/python/cp27-cp27m/lib/python2.7/site-packages/skbuild/cmaker.py", line 417, in make
os.path.abspath(CMAKE_BUILD_DIR)))
An error occurred while building with CMake.
Command:
"cmake" "--build" "." "--target" "install" "--config" "MinSizeRel" "--"
Source directory:
/work
Working directory:
/work/_skbuild/cmake-build
Please see CMake's output for more information.
+ exit 1
Exited with code 1