Hellow friends,
I’m very much a beginner in the 3DSlicer development world. I’m struggling with a compilation problem.
I created a CLI module through Slicer “Extension Manager” and started to change it according to my goals.
I then go to Cmake-gui to generate and configure. And sounds that everything went well except for two warnings:
CMake Warning (dev) at /home/leonardo/General_Sources/Slicer/CMake/SlicerMacroExtractRepositoryInfo.cmake:95 (message):
Skipping repository info extraction: directory
[/home/leonardo/Desktop/Modulos-Source/Modulos_to_Slicer/CSIM] is not a
GIT, SVN or CVS checkout
Call Stack (most recent call first):
/home/leonardo/General_Sources/Slicer/Extensions/CMake/SlicerExtensionPackageAndUploadTarget.cmake:122 (SlicerMacroExtractRepositoryInfo)
/home/leonardo/General_Sources/Slicer/CMake/SlicerExtensionCPack.cmake:219 (include)
CMakeLists.txt:27 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
Furthermore **in the QT compilation step** it happen as follows:
1) When I creat and execute my CLI module **directly** (**Without Extension Wizard**):
I use the following **CMakeLists.txt**:
#####################################
#-----------------------------------------------------------------------------
project(TextureProcessingV8)
cmake_minimum_required( VERSION 2.6 )
set(MODULE_NAME TextureProcessing)
if(NOT Slicer_SOURCE_DIR)
find_package(Slicer REQUIRED)
include(${Slicer_USE_FILE})
endif()
#-----------------------------------------------------------------------------
SEMMacroBuildCLI(
NAME ${MODULE_NAME}
#LOGO_HEADER ${Slicer_SOURCE_DIR}/Resources/ITKLogo.h
ADDITIONAL_SRCS
Plot/HistogramPlot.cxx
Percents/PercentileCalc.cxx
Features/HistoFeat.cxx
CoocurrenceFeat/CoocurrenceFeat.cxx
ShapeFeatures/ShapeFeat.cxx
RunLengthFeat/RunLengthFeat.cxx
Normalization/Normalize.cxx
Gradient/GradientFeat.cxx
TARGET_LIBRARIES ${ITK_LIBRARIES}
)
#add_subdirectory(Texture)
#-----------------------------------------------------------------------------
if(BUILD_TESTING)
add_subdirectory(Testing)
endif()
########################################################
**No ERROR Occurred AT ALL**
2) When I insert the same CLI source code inside the **EXTENSION WIZARD** Pre-built files:
I use the following CMakeLists.txt for the **MODULE**
##############################################
#-----------------------------------------------------------------------------
set(MODULE_NAME TextureProcessing)
#-----------------------------------------------------------------------------
#
# SlicerExecutionModel
#
find_package(SlicerExecutionModel REQUIRED)
include(${SlicerExecutionModel_USE_FILE})
#
# ITK
#
set(${PROJECT_NAME}_ITK_COMPONENTS
ITKIOImageBase
ITKSmoothing
)
find_package(ITK 4.6 COMPONENTS ${${PROJECT_NAME}_ITK_COMPONENTS} REQUIRED)
set(ITK_NO_IO_FACTORY_REGISTER_MANAGER 1) # See Libs/ITKFactoryRegistration/CMakeLists.txt
include(${ITK_USE_FILE})
#-----------------------------------------------------------------------------
set(MODULE_INCLUDE_DIRECTORIES
)
set(MODULE_SRCS
)
set(MODULE_TARGET_LIBRARIES
${ITK_LIBRARIES}
)
#-----------------------------------------------------------------------------
SEMMacroBuildCLI(
NAME ${MODULE_NAME}
TARGET_LIBRARIES ${MODULE_TARGET_LIBRARIES}
INCLUDE_DIRECTORIES ${MODULE_INCLUDE_DIRECTORIES}
ADDITIONAL_SRCS ${MODULE_SRCS}
Plot/HistogramPlot.cxx
Percents/PercentileCalc.cxx
Features/HistoFeat.cxx
CoocurrenceFeat/CoocurrenceFeat.cxx
ShapeFeatures/ShapeFeat.cxx
RunLengthFeat/RunLengthFeat.cxx
Normalization/Normalize.cxx
Gradient/GradientFeat.cxx
)
#-----------------------------------------------------------------------------
if(BUILD_TESTING)
add_subdirectory(Testing)
endif()
#############################################################
And the following **CMakeLists.txt for the EXTENSION**:
The following **Errors OCCUR**:
**error: undefined reference to `itk::GeometryUtilities::HyperSphereRadiusFromVolume(int, double)'**
**/usr/local/Slicer/ITKv4/Modules/Filtering/LabelMap/include/itkShapeLabelMapFilter.hxx:372: **
**error: undefined reference to `itk::GeometryUtilities::HyperSpherePerimeter(int, double)'**
**/usr/local/Slicer/ITKv4/Modules/Filtering/LabelMap/include/itkShapeLabelMapFilter.hxx:373: **
**error: undefined reference to `itk::GeometryUtilities::HyperSphereRadiusFromVolume(int, double)'**
**/usr/local/Slicer/ITKv4/Modules/Filtering/LabelMap/include/itkShapeLabelMapFilter.hxx:372: **
**error: undefined reference to `itk::GeometryUtilities::HyperSpherePerimeter(int, double)'**
**/usr/local/Slicer/ITKv4/Modules/Filtering/LabelMap/include/itkShapeLabelMapFilter.hxx:373:'**
I really can't find the solution.
I appreciate any contributions!!!!