我得到了一些這個錯誤,當我編譯在Ubuntu 16.04.1,如何解決「未定義參考」
Linking CXX executable ../lib/Slicer-4.7/cli-modules/abcd
/path/to/SimpleITK/SimpleITK-build/SimpleITK-build/lib/libSimpleITKBasicFilters1-0.11.so.1: undefined reference to `itk::ImageToImageFilter<itk::Image<int, 2u>, itk::Image<int, 2u> >::PushFrontInput(itk::DataObject const*)'
這是否意味着undefined reference to
SimpleITK沒有聯繫? 以下是我Cmakelist:
cmake_minimum_required(VERSION 2.8.8)
#-----------------------------------------------------------------------------
set(MODULE_NAME "abcd")
#-----------------------------------------------------------------------------
set(MODULE_HOMEPAGE "${_EXT_HOMEPAGE}")
set(MODULE_CATEGORY "${_EXT_CATEGORY}")
set(MODULE_CONTRIBUTORS "abc")
set(MODULE_DESCRIPTION "abc")
set(MODULE_ACKNOWLEDGEMENTS "${_EXT_ACKNOWLEDGEMENTS}")
set(MODULE_LICENSE_SHORT_DESCRIPTION "${MODULE_LICENSE_SHORT_DESCRIPTION}")
set(MODULE_MAJOR_VERSION "${_EXT_MAJOR_VERSION}")
set(MODULE_MINOR_VERSION "${_EXT_MINOR_VERSION}")
set(MODULE_PATCH_VERSION "${_EXT_PATCH_VERSION}")
# Configure XML description
configure_file(
${MODULE_NAME}.xml.in
${CMAKE_CURRENT_BINARY_DIR}/${MODULE_NAME}.xml
@ONLY
)
#-----------------------------------------------------------------------------
set(MODULE_INCLUDE_DIRECTORIES
)
set(MODULE_SRCS
)
set(MODULE_TARGET_LIBRARIES
${ITK_LIBRARIES} ${SimpleITK_LIBRARIES}
)
#-----------------------------------------------------------------------------
SEMMacroBuildCLI(
NAME ${MODULE_NAME}
TARGET_LIBRARIES ${MODULE_TARGET_LIBRARIES}
INCLUDE_DIRECTORIES ${MODULE_INCLUDE_DIRECTORIES}
ADDITIONAL_SRCS ${MODULE_SRCS}
)
#-----------------------------------------------------------------------------
if(BUILD_TESTING)
add_subdirectory(Testing)
endif()
但正如你所看到的,我有鏈接目標庫 SimpleITK和ITK,和切片機模塊中的切片機工作正常4.4的版本,但切片機更新後4.7,它不行。 有誰知道如何解決這個問題,或者給我一些線索?任何幫助讚賞。
謝謝!我會嘗試 – MMzztx
這似乎不工作,你有任何其他的想法? – MMzztx
另一個需要嘗試的就是打開SimpleITK共享庫:https://github.com/Slicer/Slicer/blob/master/SuperBuild/External_SimpleITK.cmake#L68如果這樣做不起作用,那麼「-DSITK_EXPLICIT_INSTANTIATION: BOOL = 0「將是最後一次嘗試。 – blowekamp